美文网首页
nodejs判断数值Numbber.isFinite(),Num

nodejs判断数值Numbber.isFinite(),Num

作者: XiaoAM | 来源:发表于2019-12-30 16:27 被阅读0次

    1、Numbber.isFinite() 用来检查一个数值是否是有限的
    Number.isFinite(15); // true
    Number.isFinite(0.8); // true
    Number.isFinite(NaN); // false
    Number.isFinite(Infinity); // false
    Number.isFinite(-Infinity); // false
    Number.isFinite('foo'); // false
    Number.isFinite('15'); // false
    Number.isFinite(true); // false
    注意,如果参数类型不是数值,Number.isFinite一律返回false。
    Number.isNaN()用来检查一个值是否为NaN。它们与传统的全局方法isFinite()和isNaN()的区别在于,传统方法先调用Number()将非数值的值转为数值,再进行判断,而这两个新方法只对数值有效,Number.isFinite()对于非数值一律返回false, 2、Number.isNaN()只有对于NaN才返回true,非NaN一律返回false。
    isFinite(25) // true
    isFinite("25") // true
    Number.isFinite(25) // true
    Number.isFinite("25") // false
    isNaN(NaN) // true
    isNaN("NaN") // true
    Number.isNaN(NaN) // true
    Number.isNaN("NaN") // false
    Number.isNaN(1) // false

    3、Number.pareseInt(),Number.parseFloat()
    ES6 将全局方法parseInt()和parseFloat(),移植到Number对象上面,行为完全保持不变。
    // ES5的写法
    parseInt('12.34') // 12
    parseFloat('123.45#') // 123.45
    // ES6的写法
    Number.parseInt('12.34') // 12
    Number.parseFloat('123.45#') // 123.45
    这样做的目的,是逐步减少全局性方法,使得语言逐步模块化。
    Number.parseInt===parseInt // true
    Number.parseFloat===parseFloat // true
    4、Number.isInteger() 用来判断一个数值是否是整数
    Number.isINteger(25) //true
    Number.isINteger(25.2) //false
    5、Math对象的扩展
    Math.trunc() 方法用于去除一个数的小数部分,返回整数部分
    Math.trunc(4.1) // 4
    Math.trunc(4.9) // 4
    Math.trunc(-4.1) // -4
    Math.trunc(-4.9) // -4
    Math.trunc(-0.1234) // -0
    对于没有部署这个方法的环境,可以用下面的代码模拟。
    Math.trunc=Math.trunc||function(x)
    {
    returnx<0?Math.ceil(x):Math.floor(x);
    };
    Math.sign()
    方法用来判断一个数到底是整数、负数、还是0.对于非数值型,会先将其转换为数值。
    它会返回五种值。
    参数为正数,返回+1;
    参数为负数,返回-1;
    参数为 0,返回0;
    参数为-0,返回-0;
    其他值,返回NaN。
    Math.sign(-5) // -1
    Math.sign(5) // +1
    Math.sign(0) // +0
    Math.sign(-0) // -0
    Math.sign(NaN) // NaN

    Math.cbrt() 用于计算一个数的立方根
    Math.cbrt(-1) // -1
    Math.cbrt(0) // 0
    Math.cbrt(1) // 1
    Math.cbrt(2) // 1.2599210498948734
    对于没有部署这个方法的环境,可以用下面的代码模拟。
    Math.cbrt=Math.cbrt||function(x){
    vary=Math.pow(Math.abs(x),1/3);returnx<0?-y:y;
    };

    相关文章

      网友评论

          本文标题:nodejs判断数值Numbber.isFinite(),Num

          本文链接:https://www.haomeiwen.com/subject/kpymoctx.html