ES6傳達的一個比較重要的思想,一個是儘量的減小全局的方法而把它移植到特定的對象上去,另外一個是在一些判斷的場景下,儘量的減小隱式的轉換使得獲得的結果更爲安全。瀏覽器
/* 0b(0B) 二進制*/ Number('0b111'); // 7 /* 0o(0O) 八進制*/ Number('0o10'); // 8
Number.isFinite(15); // true Number.isFinite(NaN); // false Number.isFinite(Infinity); // false Number.isFinite(true); // false isFinite("25"); // true
Number.isNaN(15); // false Number.isNaN(NaN); // true Number.isNaN('NaN'); // false isNaN('NaN'); // true
Number.isInteger(25); // true Number.isInteger('15'); // false Number.isInteger(3.0000000000000002); // true 0.1 + 0.2 === 0.3 // false 0.1 + 0.2 - 0.3 < Number.EPSILON; // true
Number.EPSILON === Math.pow(2, -52); //最小精度 // true 0.1 + 0.2 === 0.3 // false
Math.pow(2, 53) === Math.pow(2, 53) + 1 // true Number.isSafeInteger('a'); // false Number.isSafeInteger(null); // false Number.isSafeInteger(NaN); // false Number.isSafeInteger(3); // true Number.isSafeInteger(1.2); // false
Math.trunc(-4.9); // -4 Math.trunc('123.456'); // 123 Math.trunc('week'); // NAN
Math.sign(true); // +1 Math.sign(false); // 0 Math.sign(null); // 0 Math.sign('9'); // 9
2 ** 2 // 4 2 ** 3 // 8 2 ** 3 ** 2 //兩個星號表明一個指數越算,從後往前算 // 2 ** (3 ** 2)