Wartość null
reprezentuje zamierzony brak wartości jakiegoś obiektu. Jest jedną z podstawowych wartości w JavaSript.
Składnia
null
Opis
Wartość null
, jak podpowiada nazwa, zapisujemy używając słowa "null
". null
nie jest zmienną globalną, w przeciwieństwie do undefined
. Zamiast tego null
wyraża brak identyfikacji, mówiąc nam, że zmienna nie wskazuje na obiekt. W wielu API null
jest często zwracany tam, gdzie może być obiekt, ale aktualnie jeszcze go tam nie ma.
// foo nie istnieje. Nie jest zdefiniowany oraz nigdy nie był zainicjalizowany:
> foo
"ReferenceError: foo is not defined"
// Teraz wiadomo że null istnieje, ale nie ma on żadnego typu ani wartości:
> var foo = null; foo;
"null"
Różnice pomiędzy null i undefined
Podczas sprawdzania null
lub undefined, uważaj na róźnice pomiędzy operatorami równości (==) oraz identyczności (===), ponieważ ten pierwszy wykonuje konwersję typu.
typeof null // "object" (nie jest to "null" ze względu na starsze przyczyny)
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
Specyfikacje
Specification | Status | Comment |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Definicja początkowa. |
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 |
Kompatybilność z przeglądarką
We're converting our compatibility data into a machine-readable JSON format.
This compatibility table still uses the old format,
because we haven't yet converted the data it contains.
Find out how you can help!
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |