es6 数值扩展常用方法

{
    // 二进制是以 0B 开头, 不区分大小写
    console.log('B', 0B111110111); // 503

    // 八进制是以 0O 开头, 不区分大小写
    console.log('O', 0O767); // 503

    // 判断一个数是否有尽
    console.log('15', Number.isFinite(15)); // true
    console.log('NaN', Number.isFinite(NaN)); // false
    console.log('1/0', Number.isFinite(1/0)); // false

    // 判断是否不是数字的数字
    console.log('NaN', Number.isNaN(NaN)); // true
    console.log('0', Number.isNaN(0)); // false

    // 判断是不是整数
    console.log(Number.isInteger(25)); // true
    console.log(Number.isInteger(25.0)); // true
    console.log(Number.isInteger(25.1)); // false
    console.log(Number.isInteger('25')); // false

    // 判断一个数是否在 -2的53次方 至 2的53次方之间
    console.log(Number.MAX_SAFE_INTEGER); // 9007199254740991
    console.log(Number.MIN_SAFE_INTEGER); // -9007199254740991
    console.log('10', Number.isSafeInteger(10)); // true
    console.log('90071992547409910', Number.isSafeInteger(90071992547409910)); // false
    console.log('a', Number.isSafeInteger('a')); // false

    // 返回小数的整数部分
    console.log(Math.trunc(4.1)); // 4
    console.log(Math.trunc(4.9)); // 4

    // 判断一个数是正数, 负数还是0
    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('a', Math.sign('a')); // NaN

    // 立方根的计算
    console.log(Math.cbrt(-1)) // -1
    console.log(Math.cbrt(8)) // 2
}
01-01 15:22