Quelle est la différence entre null et undefined en JavaScript?


Parlons d'abord des similitudes.

nulletundefinedsont des types primitifs JavaScript.

Le sens deundefinedc'est-à-dire qu'une variable a déclaré, mais elle n'a aucune valeur assignée.

let age //age is undefined
let age = null //age is null

Remarque: accéder à une variable non déclarée lèvera unReferenceError: <variable> is not definederreur, mais cela ne veut pas dire que c'estundefined.

Comment vérifier si une variable est nulle? Utilisez l'opérateur de comparaison, par exempleage === null

Idem pour undefined:age === undefined

Dans les deux cas, vous pouvez vérifier:

if (!age) {

}

et cela correspondra à la foisnulletundefined.

Vous pouvez également utiliser letypeofopérateur:

let age
typeof age //'undefined'

même sinullest évalué comme un objet, même s'il s'agit d'un type primitif:

let age = null
typeof age //'object'

Téléchargez mon gratuitManuel du débutant JavaScript


Plus de tutoriels js: