JavaScript 字面量:数字类型详解
在 JavaScript 中,字面量是指在代码中直接表示的固定值,如数字、字符串、布尔值等。数字字面量是表示数值的字面量,可以是整数、小数或科学计数法表示的数。
整数字面量
整数字面量是没有小数点的数值,可以是正数或负数。
let age = 18; // 正整数
let count = -5; // 负整数
小数字面量
小数字面量包含小数点,表示分数。
let price = 19.99; // 正小数
let discount = -0.2; // 负小数
科学计数法字面量
科学计数法使用 e
或 E
表示 10 的幂,用于表示非常大或非常小的数值。
let largeNumber = 1.23e5; // 等于 123000
let smallNumber = 4.56e-7; // 等于 0.000000456
二进制和八进制字面量
ES6 引入了二进制和八进制字面量的表示方法。
- 二进制字面量以
0b
或0B
开头。 - 八进制字面量以
0o
或0O
开头。
let binaryNumber = 0b1010; // 二进制,等于 10
let octalNumber = 0o12; // 八进制,等于 10
特殊数字字面量
JavaScript 中有两个特殊的数字字面量:Infinity
和 -Infinity
,分别表示无限大和无限小。
let infinityValue = 1 / 0; // Infinity
let negativeInfinityValue = -1 / 0; // -Infinity
Number 类型的最大安全值和最小安全值
Number.MAX_SAFE_INTEGER
:表示可以精确表示的最大整数(2^53 - 1)。Number.MIN_SAFE_INTEGER
:表示可以精确表示的最小整数(-2^53 + 1)。
let maxSafeInteger = Number.MAX_SAFE_INTEGER; // 9007199254740991
let minSafeInteger = Number.MIN_SAFE_INTEGER; // -9007199254740991
代码示例
以下是一些数字字面量的使用示例:
// 整数字面量
let integer = 42;
// 小数字面量
let decimal = 3.14159;
// 科学计数法字面量
let scientific = 1.2e-10;
// 二进制和八进制字面量
let binaryLiteral = 0b110; // 等于 6
let octalLiteral = 0o14; // 等于 12
// 特殊数字字面量
let infinity = Infinity;
let negativeInfinity = -Infinity;
// Number 类型的安全值
let safeMax = Number.MAX_SAFE_INTEGER;
let safeMin = Number.MIN_SAFE_INTEGER;
// 输出示例
console.log(integer, decimal, scientific, binaryLiteral, octalLiteral, infinity, negativeInfinity, safeMax, safeMin);