Skip to content

值属性

这些全局属性返回一个简单值,这些值没有自己的属性和方法。

Infinity

🪴 全局属性 Infinity 是一个数值,表示无穷大。Infinity 的属性特性:不可写,不可枚举,不可配置

示例

js
console.log(Infinity); /* Infinity */
console.log(Infinity + 1); /* Infinity */
console.log(Math.pow(10, 1000)); /* Infinity */
console.log(Math.log(0)); /* -Infinity */
console.log(1 / Infinity); /* 0 */
console.log(1 / 0); /* Infinity */

NaN

全局属性 NaN 是一个表示非数字的值。NaN 的属性特性:不可写,不可枚举,不可配置

示例

js
// 强制转换为数字,是 NaN 或 当值为 NaN 时才为 true
isNaN("hello world"); // true

// 当值为 NaN 时才为 true
Number.isNaN("hello world"); // false

undefined

全局属性 undefined 表示原始值 undefined。它是一个 JavaScript 的 原始数据类型 。undefined 的属性特性:不可写,不可枚举,不可配置

示例

js
undefined == null // true
undefined === null // false

globalThis

新标准全局作用域中的 this 就是 globalThis。解决了松散模式下全局对象问题。

示例

js
if (typeof globalThis.setTimeout !== "function") {
  //  此环境中没有 setTimeout 方法!
}