Значення null позначає навмисну відсутність будь-якого значення об'єкта. Воно є однією з простих величин у JavaScript.

Синтаксис

Значення null має відповідний літерал:

null

Опис

Власне null не є ідентифікатором властивості глобального об'єкта (змінною в загальній області видимості), як undefined. Натомість null є значенням, яке свідчить, що змінна не вказує на об'єкт. В різних API значення null часто повертається там, де очікують отримати об'єкт, вказуючи таким чином, що відповідного об'єкта немає.

// Змінна foo не існує. Вона не була оголошена тож і початкового значння не має:
foo;  // "ReferenceError: foo is not defined"

// Тепер змінна foo оголошена й існує, але вона не має ані типу, ані значення:
var foo = null; 
foo;  // виводить "null"

Різниця між null та undefined

Порівнюючи змінну з null чи undefined зважайте на різницю між операторами рівності (==) й тотожності (===), оскільки перший за потреби здійснює перетворення типів.

typeof null          // "object" (не "null" з метою зворотної сумісності)
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

Специфікації

Специфікація Статус Коментар
ECMAScript 1st Edition (ECMA-262) Standard Початкова виознака.
ECMAScript 5.1 (ECMA-262)
The definition of 'null value' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'null value' in that specification.
Standard  
ECMAScript Latest Draft (ECMA-262)
The definition of 'null value' in that specification.
Draft  

Підтримка веб-переглядачами

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
Basic supportChrome Full support YesEdge Full support YesFirefox Full support 1IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes

Legend

Full support  
Full support

Див. також

Мітки документа й учасники

Зробили внесок у цю сторінку: asmforce
Востаннє оновлена: asmforce,