ES6中Math對(duì)象新增的方法實(shí)例詳解
本文實(shí)例講述了ES6中Math對(duì)象新增的方法。分享給大家供大家參考,具體如下:
Math.trunc()
Math.trunc方法用于去除一個(gè)數(shù)的小數(shù)部分,返回整數(shù)部分。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.trunc = Math.trunc || function(x) {
return x < 0 ? Math.ceil(x) : Math.floor(x);
};
Math.sign()
Math.sign方法用來(lái)判斷一個(gè)數(shù)到底是正數(shù)、負(fù)數(shù)、還是零。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.sign = Math.sign || function(x) {
x = +x; // convert to a number
if (x === 0 || isNaN(x)) {
return x;
}
return x > 0 ? 1 : -1;
};
Math.cbrt()
Math.cbrt方法用于計(jì)算一個(gè)數(shù)的立方根。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.cbrt = Math.cbrt || function(x) {
var y = Math.pow(Math.abs(x), 1/3);
return x < 0 ? -y : y;
};
Math.clz32()
JavaScript的整數(shù)使用32位二進(jìn)制形式表示,Math.clz32方法返回一個(gè)數(shù)的32位無(wú)符號(hào)整數(shù)形式有多少個(gè)前導(dǎo)0。
Math.imul()
Math.imul方法返回兩個(gè)數(shù)以32位帶符號(hào)整數(shù)形式相乘的結(jié)果,返回的也是一個(gè)32位的帶符號(hào)整數(shù)。
Math.fround()
Math.fround方法返回一個(gè)數(shù)的單精度浮點(diǎn)數(shù)形式。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.fround = Math.fround || function(x) {
return new Float32Array([x])[0];
};
Math.hypot()
Math.hypot方法返回所有參數(shù)的平方和的平方根
對(duì)數(shù)方法
ES6新增了4個(gè)對(duì)數(shù)相關(guān)方法。
(1) Math.expm1()
Math.expm1(x)返回ex - 1,即Math.exp(x) - 1。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.expm1 = Math.expm1 || function(x) {
return Math.exp(x) - 1;
};
(2)Math.log1p()
Math.log1p(x)方法返回1 + x的自然對(duì)數(shù),即Math.log(1 + x)。如果x小于-1,返回NaN。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.log1p = Math.log1p || function(x) {
return Math.log(1 + x);
};
(3)Math.log10()
Math.log10(x)返回以10為底的x的對(duì)數(shù)。如果x小于0,則返回NaN。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.log10 = Math.log10 || function(x) {
return Math.log(x) / Math.LN10;
};
(4)Math.log2()
Math.log2(x)返回以2為底的x的對(duì)數(shù)。如果x小于0,則返回NaN。
對(duì)于沒(méi)有部署這個(gè)方法的環(huán)境,可以用下面的代碼模擬。
Math.log2 = Math.log2 || function(x) {
return Math.log(x) / Math.LN2;
};
三角函數(shù)方法
ES6新增了6個(gè)三角函數(shù)方法。
Math.sinh(x) 返回x的雙曲正弦(hyperbolic sine)
Math.cosh(x) 返回x的雙曲余弦(hyperbolic cosine)
Math.tanh(x) 返回x的雙曲正切(hyperbolic tangent)
Math.asinh(x) 返回x的反雙曲正弦(inverse hyperbolic sine)
Math.acosh(x) 返回x的反雙曲余弦(inverse hyperbolic cosine)
Math.atanh(x) 返回x的反雙曲正切(inverse hyperbolic tangent)
Math.signbit()
Math.sign()用來(lái)判斷一個(gè)值的正負(fù),但是如果參數(shù)是-0,它會(huì)返回-0。
ES2016 新增了一個(gè)指數(shù)運(yùn)算符(**)
指數(shù)運(yùn)算符可以與等號(hào)結(jié)合,形成一個(gè)新的賦值運(yùn)算符(**=)。
let a = 2; a **= 2; // 等同于 a = a * a; let b = 3; b **= 3; // 等同于 b = b * b * b;
注:在vp8引擎中與Math.pow()結(jié)果有些不同。
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ECMAScript6(ES6)入門教程》、《JavaScript字符與字符串操作技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- ES6中新增的Object.assign()方法詳解
- 淺談ES6新增的數(shù)組方法和對(duì)象
- ES6中字符串string常用的新增方法小結(jié)
- ES6中數(shù)組array新增方法實(shí)例總結(jié)
- ES6 新增的創(chuàng)建數(shù)組的方法(小結(jié))
- 淺析Javascript ES6新增值比較函數(shù)Object.is
- ES6新增的math,Number方法
- ES6新增數(shù)據(jù)結(jié)構(gòu)WeakSet的用法詳解
- 詳解es6新增數(shù)組方法簡(jiǎn)便了哪些操作
- ES6知識(shí)點(diǎn)整理之String字符串新增常用方法示例
- 簡(jiǎn)述ES6新增關(guān)鍵字let與var的區(qū)別
- ES6學(xué)習(xí)筆記之新增數(shù)據(jù)類型實(shí)例解析
相關(guān)文章
關(guān)于微信小程序獲取小程序碼并接受buffer流保存為圖片的方法
這篇文章主要介紹了關(guān)于微信小程序獲取小程序碼并接受buffer流保存為圖片的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用小程序具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧<BR>2019-06-06
ASP.NET jquery ajax傳遞參數(shù)的實(shí)例
下面小編就為大家?guī)?lái)一篇ASP.NET jquery ajax傳遞參數(shù)的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-11-11
文本框只能輸入數(shù)字的實(shí)現(xiàn)方法(兼容IE火狐)
下面小編就為大家?guī)?lái)一篇文本框只能輸入數(shù)字的實(shí)現(xiàn)方法(兼容IE火狐)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-06-06
詳解webpack4之splitchunksPlugin代碼包分拆
這篇文章主要介紹了詳解webpack4之splitchunksPlugin代碼包分拆,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
微信小程序?qū)崿F(xiàn)頁(yè)面左右滑動(dòng)
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)頁(yè)面左右滑動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11
BootStrap Validator 版本差異問(wèn)題導(dǎo)致的submitHandler失效問(wèn)題的解決方法
這篇文章主要介紹了BootStrap Validator 版本差異問(wèn)題導(dǎo)致的submitHandler失效問(wèn)題的解決方法,下面通過(guò)本文給大家詳細(xì)說(shuō)明一下,需要的朋友可以參考下2016-12-12

