ES6中Math对象新增的方法实例详解
本文实例讲述了ES6中Math对象新增的方法。分享给大家供大家参考,具体如下:
Math.trunc()
Math.trunc方法用于去除一个数的小数部分,返回整数部分。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.trunc=Math.trunc||function(x){ returnx<0?Math.ceil(x):Math.floor(x); };
Math.sign()
Math.sign方法用来判断一个数到底是正数、负数、还是零。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.sign=Math.sign||function(x){ x=+x;//converttoanumber if(x===0||isNaN(x)){ returnx; } returnx>0?1:-1; };
Math.cbrt()
Math.cbrt方法用于计算一个数的立方根。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.cbrt=Math.cbrt||function(x){ vary=Math.pow(Math.abs(x),1/3); returnx<0?-y:y; };
Math.clz32()
JavaScript的整数使用32位二进制形式表示,Math.clz32方法返回一个数的32位无符号整数形式有多少个前导0。
Math.imul()
Math.imul方法返回两个数以32位带符号整数形式相乘的结果,返回的也是一个32位的带符号整数。
Math.fround()
Math.fround方法返回一个数的单精度浮点数形式。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.fround=Math.fround||function(x){ returnnewFloat32Array([x])[0]; };
Math.hypot()
Math.hypot方法返回所有参数的平方和的平方根
对数方法
ES6新增了4个对数相关方法。
(1)Math.expm1()
Math.expm1(x)返回ex-1,即Math.exp(x)-1。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.expm1=Math.expm1||function(x){ returnMath.exp(x)-1; };
(2)Math.log1p()
Math.log1p(x)方法返回1+x的自然对数,即Math.log(1+x)。如果x小于-1,返回NaN。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.log1p=Math.log1p||function(x){ returnMath.log(1+x); };
(3)Math.log10()
Math.log10(x)返回以10为底的x的对数。如果x小于0,则返回NaN。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.log10=Math.log10||function(x){ returnMath.log(x)/Math.LN10; };
(4)Math.log2()
Math.log2(x)返回以2为底的x的对数。如果x小于0,则返回NaN。
对于没有部署这个方法的环境,可以用下面的代码模拟。
Math.log2=Math.log2||function(x){ returnMath.log(x)/Math.LN2; };
三角函数方法
ES6新增了6个三角函数方法。
Math.sinh(x)返回x的双曲正弦(hyperbolicsine)
Math.cosh(x)返回x的双曲余弦(hyperboliccosine)
Math.tanh(x)返回x的双曲正切(hyperbolictangent)
Math.asinh(x)返回x的反双曲正弦(inversehyperbolicsine)
Math.acosh(x)返回x的反双曲余弦(inversehyperboliccosine)
Math.atanh(x)返回x的反双曲正切(inversehyperbolictangent)
Math.signbit()
Math.sign()用来判断一个值的正负,但是如果参数是-0,它会返回-0。
ES2016新增了一个指数运算符(**)
指数运算符可以与等号结合,形成一个新的赋值运算符(**=)。
leta=2; a**=2; //等同于a=a*a; letb=3; b**=3; //等同于b=b*b*b;
注:在vp8引擎中与Math.pow()结果有些不同。
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《ECMAScript6(ES6)入门教程》、《JavaScript字符与字符串操作技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。