美文网首页vue技术学习es6 语法学习Vue.js专区
ES6基础教程(第四节)——数值的扩展

ES6基础教程(第四节)——数值的扩展

作者: 多平方 | 来源:发表于2019-06-19 21:29 被阅读0次

在es6中对数值的修改主要集中在三个方便,第一是将原在window对象

下的函数移植到了Number对象下,逐渐的实现语言的模块化,第二是新增了部分Number对象的函数,第三是es6给Math对象新增了17个函数;这一节我们来对这三个方面进行介绍。

将window对象移植到Number对象:

Number.isNaN()函数:

Number.isNaN(2.5);

//false

Number.isNaN()是用来判断是不是非数值的,这里的2.5是数值,所以返回的布尔值是false

Number.isFinite()函数:

用来检查一个数值是否非无穷。注意是判断非无穷,不是判断无穷,

Number.isFinite(1);

//结果:true,数值1是有穷,即非无穷

Number.isFinite(Infinity);

//结果:false,Infinity表示无穷大的特殊值

Number.parseInt()函数:

解析一个字符串,返回一个整数。

parseInt函数同样是从window对象下移植到Number对象下,但是它的作用没有任何变化。

Number.parseInt('12.3abc');

//结果:返回数值12

Number.parseFloat()函数:解析一个字符串,返回一个浮点数。

parseFloat函数同样是从window对象下移植到Number对象下,但是它的作用没有任何变化。

Number.parseFloat('12.3abc');

//结果:返回数值12.3

以上4个函数就是从window对象移植到Number对象的。

我们再来讲述一下Number新增的对象

Number.isInteger函数:用来判断是否是整数。

Number.isInteger(6.666);

//结果:false

Number.isInteger(6);

//结果:true

Number.EPSILON常量:定义一个极小的数值。

console.log(Number.EPSILON);

//结果:2.220446049250313e-16

Number.EPSILON的出现是用来判断浮点数的计算误差,如果浮点数计算得到的误差不超过Number.EPSILON的值,就表示可以接受这样的误差。

ES6为我们引入了安全整数的概念。什么?整数还有安全和不安全的说法?原来JavaScript能够准确表示的整数范围在-253到253之间,超过这个范围,无法精确表示这个值。故称之为不安全。

为此,ES6定义了两个常量来表示这个范围的最大值和最小值:Number.MAX_SAFE_INTEGER和Number.MIN_SAFE_INTEGER。此外,如果给你一个数值,你不知道它是否超出了这个安全范围,你可以使用ES6给我们新增的一个函数Number.isSafeInteger来进行判断。看例子:

Number.isSafeInteger(Number.MAX_SAFE_INTEGER);

//结果:true

Number.isSafeInteger(Number.MAX_SAFE_INTEGER+1);

//结果:false

ES6给Math对象新增了17个函数

Math.trunc(x)函数:用于去除一个数的小数部分,返回整数部分。

Math.sign(x)函数:用来判断一个数到底是正数、负数、还是零。

Math.cbrt(x)函数:用于计算一个数的立方根。

Math.acosh(x) 返回 x 的反双曲余弦。

Math.asinh(x) 返回 x 的反双曲正弦。

Math.atanh(x) 返回 x 的反双曲正切。

Math.clz32(x) 返回 x 的 32 位二进制整数表示形式的前导 0 的个数。

Math.sinh(x) 返回x的双曲正弦。

Math.cosh(x) 返回 x 的双曲余弦。

Math.expm1(x) 返回 eˆx - 1。

Math.fround(x) 返回 x 的单精度浮点数形式。

Math.hypot(...values) 返回所有参数的平方和的平方根。

Math.imul(x, y) 返回两个参数以 32 位整数形式相乘的结果。

Math.log1p(x) 返回 1 + x 的自然对数。

Math.log10(x) 返回以 10 为底的x的对数。

Math.log2(x) 返回以 2 为底的 x 的对数。

Math.tanh(x) 返回 x 的双曲正切。

以上就是新增的17个函数;

这一节就到这里,每天都要学习,每天都要进步,一起debug吧!

微信公众号

相关文章

  • ES6基础教程(第四节)——数值的扩展

    在es6中对数值的修改主要集中在三个方便,第一是将原在window对象 下的函数移植到了Number对象下,逐渐的...

  • es6的数值,函数,字符串扩展

    一、es6的数值扩展 二、es6的函数扩展 代码效果:对象解构在函数中的应用 三、es6字符串扩展 常用方法 代码...

  • ES6扩展归纳

    ES6扩展归纳 介绍ES6相比与ES5在原有对象上的扩展,包括字符串、正则、数值、函数、数组、对象等扩展,本文是阮...

  • ES6之数值扩展

    ES6对数值的扩展,说是扩展,但是更像是对ES5中的数值的一个方法的添加和补充,其变化远没有字符串的扩展变化...

  • es6数值扩展

    1. 二进制和八进制表示法 ES6 提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o(或0O)...

  • ES6数值扩展

    阮一峰大神的ES6数值篇已经写的很好很全,下边贴出链接,然后斗胆写一点自己学习的总结。阮一峰ES6数值扩展我准备从...

  • es6‖数值扩展

  • ES6数值扩展

    二进制0B,八进制0O Number.isFinite(),Number.isNaN() Number.parse...

  • ES6(数值扩展)

  • ES6标准入门 摘要 (数值的扩展)

    数值的扩展 Number.isFinite(), Number.isNaN() ES6 在Number对象上,新提...

网友评论

    本文标题:ES6基础教程(第四节)——数值的扩展

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