Dans CoffeeScript, quel est le moyen le plus simple de vérifier si une clé existe dans un objet?
Réponses
Trop de publicités? key of obj
Cela compile en JavaScript key in obj
. (CoffeeScript utilise of
pour les clés, et in
pour les valeurs de tableau: val in arr
vérifiera si val
est en arr
.)
La réponse de thejh est correcte si vous souhaitez ignorer le prototype de l'objet. La réponse de Jimmy est correcte si vous souhaitez ignorer les clés avec une valeur null
ou undefined
.
limscoder
Points
1504
Le '?' l'opérateur vérifie l'existence:
if obj?
# object is not undefined or null
if obj.key?
# obj.key is not undefined or null
# call function if it exists
obj.funcKey?()
# chain existence checks, returns undefined if failure at any level
grandChildVal = obj.key?.childKey?.grandChildKey
# chain existence checks with function, returns undefined if failure at any level
grandChildVal = obj.key?.childKey?().grandChildKey
thejh
Points
20901