1. 程式人生 > 其它 >JS數學物件及方法

JS數學物件及方法

數學物件

Math:裡面提供了很多與數學相關的屬性和方法

1、Math定義的數學常量

Math.E    常量E的值
Math.LN2  2的自然對數  //0.6931471805599453
Math.LN10  10的自然對數  //2.302585092994046
Math.LOG2E  以2為底e的對數  //1.4426950408899634
Math.LOG10E  以10為底e的對數  //0.4342944819032518
Math.PI  Π的值  //3.141592653589793
Math.SQRT1_2  1/2的平方根  //0.7071067811865476
Math.SQRT2  2的平方根  //1.4142135623730951

2、方法

不常用方法:

1、Math.abs()    轉換絕對值
2、Math.pow(n, m)  指數函式,返回n的m次冪
3、Math.sqrt()  開根號
4、Math.log(num)  返回num的自然對數
5、Math.exp(num)  返回Math.E的num次冪
6、Math.acos(x)  返回x的反餘弦值
7、Math.asin(x)  返回x的反正弦值
8、Math.atan(x)  返回x的反正切值
9、Math.atan2(y, x)  返回y/x的反正切值
10、Math.cos(x)  返回x的餘弦值
11、Math.sin(x)  返回x的正弦值
12、Math.tan(x)  返回x的正切值
//6-12在canvas畫圖時可能會用到

常用的方法:

1、獲取最大 最小值

Math.max(); 獲取最大值

Math.min(); 獲取最小值

注意:該方法的引數不支援陣列的形式,只能使用手動羅列的形式,要想使其能夠查詢陣列的最大、最小值需配合apply使用。

Math.max.apply(null, arr);
Math.max.apply(null, arr);

2、取整

Math.floor()  向下取整  //只取整數部分
Math.ceil()  向上取整  //如果有小數部分那麼就將整數部分加一
Math.round()  四捨五入  //數學中的四捨五入法則

3、求隨機數

Math.random(); 獲取到0-1之間的數[0, 1) 取的值可能大於等於0,小於1

求某個範圍之內的隨機數

[n, m]    Math.floor(Math.random() * (m-n+1) + n)
[n, m)    Math.floor(Math.random() * (m - n) + n)
(n, m)    Math.ceil(Math.random() * (m - n - 1) + n)

對於任何一個方法來講都有以下這兩個屬性

.call()

.apply()

這兩個方法都可以來改變我們當前函式執行時的作用域環境;它們都接受兩個引數,只不過call只接受手動羅列的引數,而apply接受引數的形式是陣列的形式。