與其它全局對象不同的是, 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(), fround(), cbrt() clz32()
Math.acosh(x)
返回x的反雙曲余弦值.
Math.asinh(x)
返回x的反雙曲正弦值.
Math.atanh(x)
返回 x 的反雙曲正切值.
Math.cbrt(x)
返回x的立方根.
Math.clz32(x)
Returns the number of leading zeroes of a 32-bit integer.
Math.cosh(x)
返回x的雙曲余弦值.
Math.expm1(x)
返回 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)
返回x的符號函數, 判定x是正數,負數還是0.
Math.sinh(x)
返回x的雙曲正弦值.
Math.tanh(x)
返回x的雙曲正切值.
Math.trunc(x)
返回x的整數部分,去除小數.
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com