數值處理新增特性
- 新增方法,如數學處理
- 方法調整,全域性方法移植到 Number 物件上
多進製表示方法
{
// es6 2進位制 0B 開頭
console.log('B',0B111110111); // 503
console.log('B',0b111110111); // 相同,0B 和 0b 都可以
// es6 8進位制 0o 開頭
console.log(0o767); // 503
console.log(0O767); // 相同,0o 和 0O 都可以
}
複製程式碼
是否有窮
使用頻率不高
{
{
console.log('15',Number.isFinite(15)); // true
console.log('NaN',Number.isFinite(NaN)); // false
console.log('1/0',Number.isFinite('true'/0)); // false
}
}
複製程式碼
是不是 NaN
使用頻率不高
{
console.log('NaN',Number.isNaN(NaN)); // true
console.log('0',Number.isNaN(0)); // false
}
複製程式碼
是不是整數
{
console.log('25',Number.isInteger(25)); // true
console.log('25.0',Number.isInteger(25.0)); // ture
console.log('25.1',Number.isInteger(25.1)); // false
console.log('字串的25',Number.isInteger('25')); // false,引數必須是數字
}
複製程式碼
數字的上限和下限
兩個常量
{
console.log(Number.MAX_SAFE_INTEGER,Number.MIN_SAFE_INTEGER); // 9007199254740991 -9007199254740991
}
複製程式碼
是否是安全數
判斷數字是否在有效範圍內,是否是安全數
{
console.log('10',Number.isSafeInteger(10)); // true
console.log('a',Number.isSafeInteger('a')); // false,引數不是數字
}
複製程式碼
返回小數的整數部分
{
console.log(4.1,Math.trunc(4.1)); // 4
console.log(4.9,Math.trunc(4.9)); // 4
console.log(4,Math.trunc(4)) // 4
}
複製程式碼
判斷數字是正數、負數、0
返回值4種情況:1、-1、0、NaN
{
console.log('-5',Math.sign(-5)); // -1
console.log('0',Math.sign(0)); // 0
console.log('5',Math.sign(5)); // 1
console.log('字串的50',Math.sign('50')); // 1,轉換成了數字
console.log('foo',Math.sign('foo')); // NaN
}
複製程式碼
立方根的計算
{
console.log('-1',Math.cbrt(-1)); // -1
console.log('8',Math.cbrt(8)); // 2
}
複製程式碼