js实现number
JavaScript 数字类型处理
JavaScript 中的数字类型(Number)用于表示整数和浮点数。以下是常见的使用方法和注意事项:
数字声明与基本操作
let integer = 42; // 整数
let float = 3.14; // 浮点数
let scientific = 2.998e8; // 科学计数法(299800000)
数字精度问题 浮点数计算可能存在精度问题:
0.1 + 0.2 === 0.3; // false
解决方法:
// 使用toFixed限定小数位
(0.1 + 0.2).toFixed(2) === "0.30";
// 或放大为整数计算
(1 + 2)/10 === 0.3; // true
特殊数值
Infinity; // 无穷大
NaN; // 非数字(Not a Number)
isNaN(NaN); // true 检测NaN
isFinite(123); // true 检测有限数字
数字转换
parseInt("10"); // 10(字符串转整数)
parseFloat("3.14"); // 3.14(字符串转浮点数)
Number("123"); // 123(严格转换)
+"42"; // 42(快速转换)
数学运算
Math.PI; // 圆周率
Math.sqrt(16); // 4 平方根
Math.round(4.6); // 5 四舍五入
Math.random(); // 0~1随机数
ES6新增特性
Number.isInteger(42); // true 检测整数
Number.EPSILON; // 最小精度差值
0b1010; // 10 二进制写法
0o744; // 484 八进制写法
大整数(BigInt) ES2020新增类型,用于超过2^53的整数:

const bigNum = 9007199254740991n;
bigNum + 1n; // 9007199254740992n
注意:JavaScript所有数字都以64位浮点数(IEEE 754标准)存储,整数实际是浮点数的特例。






