Opérateur typeof
L'opérateur typeof permet de déterminer
le type d'un paramètre (nombre, chaîne, objet). L'opérateur
retourne une chaîne de caractères, contenant le type ('number',
'string', 'object').
Pour null
l'opérateur retourne 'object' (c'est
une erreur reconnue du langage). Pour les fonctions, l'opérateur
retourne 'function'. Ceci est fait
pour des raisons pratiques, bien que le type 'function'
n'existe pas.
Syntaxe
L'opérateur typeof a 2 syntaxes
(les deux syntaxes fonctionnent de manière identique):
typeof paramètre;
typeof(paramètre);
Exemple
Voyons comment typeof fonctionne avec
un nombre:
typeof 1;
Suite à l'exécution du code
nous obtiendrons la valeur number:
'number'
Exemple
Maintenant, passons une chaîne en paramètre:
typeof 'str';
Résultat de l'exécution du code:
'string'
Exemple
Maintenant, spécifions la valeur booléenne
true comme paramètre:
typeof true;
Résultat de l'exécution du code:
'boolean'
Exemple
Voyons quel type a
la valeur undefined:
typeof undefined;
Après exécution du code
nous obtiendrons également undefined:
'undefined'
Exemple
Maintenant, découvrons le type d'un objet vide:
typeof {};
Résultat de l'exécution du code:
'object'
Exemple
Et maintenant, découvrons le type d'un tableau vide:
typeof [];
En résultat, nous obtiendrons également
'object':
'object'
Exemple
Découvrons le type
de la valeur null:
typeof null;
En résultat, nous obtiendrons également
'object', ce qui est
une erreur reconnue du langage:
'object'
Exemple
Maintenant, déterminons le type d'une fonction vide:
typeof function() {};
Après exécution du code, nous obtiendrons
'function',
bien que ce type
n'existe pas. Cette chaîne
est nécessaire pour la commodité de l'utilisateur
lors de la détermination d'une fonction:
'function'
Exemple
Écrivons une fonction qui n'affichera que les nombres:
function printNumber(number) {
if (typeof number === 'number') {
console.log(number);
}
}
printNumber(2);
printNumber('str');
printNumber(3);