es6 Number新增

一. Number新增方法

以前的方法都是挂着window身上的,我们会就得很奇怪,明明是处理数字的方法,为什么不定义在Number身上,而要定义在全局,ES6改变了现在挂着在Number自己身上

所以isNaN() 和 Number.isNaN()的用法完全一样

现在parseInt(),parseFloat()两个方法也挂着到了Number上.

1. Number.parseInt()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
2.Number.isFinite()Number.isNaN()
2.1 Number.isFinite()

不会进行隐式类型转换

Number.isFinite()用来检查一个数值是否为有限的(finite)。

  1. 用法

Number.isFinite()

  1. 参数

需要判断的数字

let a = 33;
let b = true;
let c = '3';
let d = 12.3;
console.log(Number.isFinite(a));   // true
console.log(Number.isFinite(b));   // false
console.log(Number.isFinite(c));   // false
console.log(Number.isFinite(d));   // true

是数字就返回true,不是就返回false,不会进行转换,NaN,'3’都是false

2.2 Number.isNaN()

Number.isNaN()用来检查一个值是否为NaN

和全局函数 isNaN() 相比,该方法不会强制将参数转换成数字,只有在参数是真正的数字类型,且值为 NaN 的时候才会返回 true

Number.isNaN(NaN);        // true
Number.isNaN(Number.NaN); // true
Number.isNaN(0 / 0)       // true

// 下面这几个如果使用全局的 isNaN() 时,会返回 true。
Number.isNaN("NaN");      // false,字符串 "NaN" 不会被隐式转换成数字 NaN。
Number.isNaN(undefined);  // false
Number.isNaN({});         // false
Number.isNaN("blabla");   // false

// 下面的都返回 false
Number.isNaN(true);
Number.isNaN(null);
Number.isNaN(37);
Number.isNaN("37");
Number.isNaN("37.37");
Number.isNaN("");
Number.isNaN(" ");
3. Number.isInteger()

Number.isInteger()用来判断一个值是否为整数。需要注意的是,在 JavaScript 内部,整数和浮点数是同样的储存方法,所以 3 和 3.0 被视为同一个值。

Number.isInteger()

let a = 33;
let b = '3';
let c = 12.3;
console.log(Number.isInteger(a));	// true
console.log(Number.isInteger(b));	// false
console.log(Number.isInteger(c));	// false

就是你肉眼看,是整数就是true,不是就是false,不会进行类型转换

Number.isInteger(25) // true
Number.isInteger(25.0) // true
Number.isInteger(25.1) // false
Number.isInteger("15") // false
Number.isInteger(true) // false
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值