This page was translated from English by the community.Learn more and join the MDN Web Docs community.
null
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
Значениеnull представляет отсутствие какого-либо объектного значения. В JavaScript,null являетсяпримитивом, и в контексте логических операций, рассматривается какложное (falsy).
In this article
Интерактивный пример
function getVowels(str) { const m = str.match(/[aeiou]/gi); if (m === null) { return 0; } return m.length;}console.log(getVowels("sky"));// Expected output: 0Синтаксис
null
Описание
Значениеnull записывается литераломnull. Оно является самостоятельным, а не свойством глобального объекта (какundefined). В API,null часто присутствует в местах где ожидается объект, но подходящего объекта нет.
// переменная foo не существует - она не была определена и никогда не инициализировалась:> foo'ReferenceError: foo is not defined'// переменная foo существует, но она не имеет ни типа, ни значения:> var foo = null; foo'null'Отличия междуnull иundefined
null является определённым значением отсутствия объекта, тогда какundefined обозначает неопределённость. Например:
var element;// значение переменной element до её инициализации не определённо: undefinedelement = document.getElementById("not-exists");// здесь при попытке получения несуществующего элемента, метод getElementById возвращает null// переменная element теперь инициализирована значением null, её значение определеноПри проверке наnull илиundefined, помните оразличии между операторами равенства (==) и идентичности (===): с первым, выполняется преобразование типов.
typeof null; // object (не "null" из соображений обратной совместимости)typeof undefined; // undefinednull === undefined; // falsenull == undefined; // trueСпецификации
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-null-value> |