首頁  >  文章  >  web前端  >  原生js中math物件的詳細介紹

原生js中math物件的詳細介紹

零下一度
零下一度原創
2017-06-27 15:51:041488瀏覽

本文參考MDN做的詳細整理,方便大家參考MDN
Math 也是一個內建對象, 為數學常數和數學函數提供了屬性和方法,而不是一個函數對象。

與其它全域物件不同的是, Math 不是一個建構器. Math 的所有屬性和方法都是靜態的. 你用到的常數pi可以用Math.PI 表示,用x 作參數Math. sin(x)呼叫sin函數. JavaScript中的常數, 是以全精度的實數定義的.

#屬性:

Math.E
歐拉常數,也是自然對數的底數, 約等於2.718.
Math.LN2
2的自然對數, 約等於0.693.
Math.LN10
10的自然對數, 約等於2.303.
Math.LOG2E
以2為底E的對數, 約等於1.443.
Math.LOG10E
以10為底E的對數, 約等於0.434.
Math.PI
圓周率,一個圓的周長和直徑之比,約等於3.14159.
Math.SQRT1_2
1/2的平方根, 約等於0.707.
Math.SQRT2
2的平方根,約等於1.414.

方法:

要注意的是:
三角函數(sin(), cos(), tan(),asin(), acos(), atan(), atan2( ))是以弧度回傳值的。可以用除法(Math.PI / 180)把弧度轉換為角度,也可以用其他方法來轉換。
很多數學函數都有一個精度,而且精度在不同環境下也是不相同的。這意味著不同的瀏覽器會給出不同的結果,甚至相同的 JS 引擎在不同的OS或架構下也會給出不同的結果。

Math.ceil(x)
傳回x向上取整後的整數值.
Math.floor(x)
傳回x向下取整後的整數值。
Math.round(x)
傳回四捨五入後的整數.
Math.sqrt(x)
傳回x的平方根.如果參數 number 為負值,則 sqrt 傳回 NaN。
Math.tan(x)
傳回x的正切值,x表示一個角(單位:弧度)
Math.abs(x)
傳回x的絕對值.傳入一個非數字形式的字串或undefined/empty 變量,將傳回NaN。傳入 null 將傳回 0。
Math.sin(x)
傳回一個-1 到1 之間的數值,表示給定角度(單位:弧度)的正弦值
Math.acos(x)
傳回一個數的反餘弦值(單位為弧度)。 acos 方法以 -1 到 1 的一個數為參數,傳回一個 0 到 pi (弧度)的數值。如果傳入的參數值超出了限定的範圍,將傳回 NaN
Math.asin(x)
傳回一個數值的反正弦(單位為弧度)。 asin 方法接受 -1 到 1 之間的數值作為參數,傳回一個介於-π/2到π/2弧度的數值。如果接受的參數值超出範圍,則傳回 NaN。
Math.atan(x)
傳回一個數值的反正切(以弧度為單位),以介於-PI/2 與PI/2 弧度之間的數值來傳回x 的反正切值.
Math.atan2(x, y)
傳回y/x 的反正切值. atan2 方法傳回一個-pi 到pi 之間的數值,表示點(x, y) 對應的偏移角度。這是一個逆時針角度,以弧度為單位,正X軸和點 (x, y) 與原點連線 之間。注意此函數接受的參數:先傳遞 y 座標,然後是 x 座標。
atan2 接受單獨的x 和y 參數,而atan 接受兩個參數的比值
Math.cos(x)
返回x的餘弦值.傳回一個-1 到1 之間的數值,表示角度(單位:弧度)的餘弦值。
Math.exp(x)
傳回Ex, 當x為參數, E 是歐拉常數(2.718...), 自然對數的底.
Math.log(x)
傳回數的自然對數,如果指定的number 為負數,則傳回值為NaN。
Math.max([x[,y[,…]]])
傳回0個到多個數值中最大值。
如果沒有參數,則結果為 - Infinity。
如果有任一參數不能轉換為數值,則結果為 NaN。
Math.min([x[,y[,…]]])
傳回0個到多個數值中最小值,Math.min 常用於裁切一個值,以便使其總是小於或等於某個邊界值
如果沒有參數,則結果為Infinity。
如果有任一參數不能轉換為數值,則結果為 NaN。
Math.pow(x,y)
傳回x的y次方.
Math.random()
傳回0到1之間的偽隨機數(大於等於0,小於1) ,以目前時間為隨機數種子
Math.floor(Math.random() * (max - min + 1) + min); // 傳回一個介於min與max之間的整數隨機數

以下ES6新增:

log10(), log2(), log1p(), expm1(), cosh(), sinh(), tanh(), acosh(), asinh(), atanh(), hypot(), trunc() , sign(), imul(), around(), cbrt() clz32()
Math.acosh(x)
Returns the inverse hyperbolic cosine of x.
Math.asinh(x)
Returns the inverse hyperbolic sine of x.
Math.atanh(x)
Returns the inverse hyperbolic tangent of x.
Math.cbrt(x)
Returns the cube root of x.
Math.clz32(x)
Returns the number of leading zeroes of a 32-bit integer.
Math.cosh(x)
Returns the hyperbolic cosine of x.
Math.expm1 (x)
Returns the value of exp(x)-1.
Math.fround(x)
Returns the nearest single precision float representation of a number.
Math.hypot([x[, y[,…]]])
Returns the square root of the sum of squares of its arguments.
Math.imul(x)
Returns the result of a 32-bit integer multiplication.
Math.log1p(x)
Returns the natural logarithm of 1 + x (loge, also ln) of a number.
Math.log10(x)
Returns the base 10 logarithm of x.
Math.log2(x)
Returns the base 2 logarithm of x.
Math.sign(x)
Returns the sign function of x to determine whether x is a positive number, a negative number or 0.
Math.sinh (x)
Returns the hyperbolic sine value of x.
Math.tanh(x)
Returns the hyperbolic tangent value of x.
Math.trunc(x)
Returns the integer of x part, remove decimals.

以上是原生js中math物件的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn