La valeur null est un littéral JavaScript représentant la nullité au sens où aucune valeur pour l'objet n'est présente. C'est une des valeurs primitives de JavaScript.

Syntaxe

null

Description

La valeur null est un littéral (et non pas une propriété de l'objet global telle que undefined). Dans certaines API, null est souvent utilisé en valeur de retour lorsqu'un objet est attendu mais qu'aucun objet ne convient. Lors de tests d'égalité avec null ou undefined, il faut faire attention aux différences entre les opérateurs d'égalité faible (==) et stricte (===) (on aura une conversion de type avec le premier).

// toto n'existe pas, n'a pas été défini et n'a jamais été initialisé
toto;
"ReferenceError: toto is not defined"

// toto existe mais n'a ni type ni valeur
var toto = null;
console.log(toto); // null

Différence entre null et undefined

typeof null;           // "object" (pas null pour des raisons historiques)
typeof undefined;      // "undefined"
null === undefined;    // false
null  == undefined;    // true
null === null;         // true
null  == null;         // true
!null;                 // true
isNaN(1 + null);       // false
isNaN(1 + undefined);  // true

Spécifications

Spécification État Commentaires
ECMAScript 1st Edition (ECMA-262) Standard Définition initiale.
ECMAScript 5.1 (ECMA-262)
La définition de 'null value' dans cette spécification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
La définition de 'null value' dans cette spécification.
Standard  
ECMAScript Latest Draft (ECMA-262)
La définition de 'null value' dans cette spécification.
Projet  

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobileServeur
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari pour iOSSamsung InternetNode.js
Support simpleChrome Support complet OuiEdge Support complet OuiFirefox Support complet 1IE Support complet OuiOpera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet 4Opera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android Support complet Ouinodejs Support complet Oui

Légende

Support complet  
Support complet

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : SphinxKnight, benjamin-chevillon, teoli
Dernière mise à jour par : SphinxKnight,