核心提示:1、数字前面的0可以省略,数字后面的0也可以省略42.toFixed(3) // SyntaxError (因为42.是一个数字)42..toFixed(3)// 正确写法42 .toFixed(3)...
1、数字前面的0可以省略,数字后面的0也可以省略
42.toFixed(3) // SyntaxError (因为42.是一个数字) 42..toFixed(3) // 正确写法 42 .toFixed(3) // 正确写法 (常量后面打空格) // 不过对于常量而言,这样的语法很容易引起误会, 不建议使用
2、检测整数 Number.isInteger(num)
Number.isInteger(42); // true Number.isInteger(42.0); // true
3、 检测NaN (ES6)
// 使用以下代码替代 isNaN(a); Number.isNaN(a); // 替代方法 if (!Number.isNaN) { Number.isNaN = function (n) { return n !== n; } }
4、Object.is(a, b) 判断两个值是否绝对相等 (ES6)
var a = 2 / "foo"; // NaN var b = -3 * 0; // -0 Object.is(a, NaN); // true Object.is(b, -0); // true Object.is(b, 0); // false
// 替代方法 if (!Object.is) { Object.is = function (v1, v2) { if (v1 === 0 && v2 === 0) { return 1 / v1 === 1 / v2; } // 判断是否是NaN if (v1 !== v1) { return v2 !== v2; } // 其他情况 return v1 === v2; }; }