此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
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年7月.
尝试一下
function getVowels(str) {
const m = str.match(/[aeiou]/gi);
if (m === null) {
return 0;
}
return m.length;
}
console.log(getVowels("sky"));
// Expected output: 0
语法
js
null
描述
值 null 被写作字面量:null。不像 undefined,null 不是全局对象的属性。相反,null 是表示缺少的标识,指示变量未指向任何对象。在 API 中,null 常在预期的值应是一个对象,但又没有关联的对象的地方使用。
js
// foo 不存在。它从未被定义或初始化:
foo; //ReferenceError: foo is not defined
js
// 已知 foo 现在已经存在,但它没有类型和值:
const foo = null;
foo; //null
示例
>null 与 undefined 的不同点
当检查值是否为 null 或 undefined 时,请注意相等(==)与全等(===)运算符的区别,前者会执行类型转换:
js
typeof null; // "object"(因历史原因而不是 "null")
typeof undefined; // "undefined"
null === undefined; // false
null == undefined; // true
null === null; // true
null == null; // true
!null; // true
Number.isNaN(1 + null); // false
Number.isNaN(1 + undefined); // true
规范
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-null-value> |
浏览器兼容性
Loading...