一、Math 对象
Math 对象用于执行数学任务。
与其他全局对象不同,Math对象没有构造函数。方法和属性是静态的。
可以在不首先创建Math对象的情况下使用所有方法和属性(常量)。
1、Math 属性(常量)
JavaScript 提供了可由 Math 对象访问的 8 个数学常量:
Math.E // 返回欧拉指数(Euler's number) Math.PI // 返回圆周率(PI) Math.SQRT2 // 返回 2 的平方根 Math.SQRT1_2 // 返回 1/2 的平方根 Math.LN2 // 返回 2 的自然对数 Math.LN10 // 返回 10 的自然对数 Math.LOG2E // 返回以 2 为底的 e 的对数(约等于 1.414) Math.LOG10E // 返回以 10 为底的 e 的对数(约等于0.434)
2、Math.round()
Math.round(x) 的返回值是 x 四舍五入为最接近的整数:
Math.round(6.8); // 返回 7 Math.round(2.3); // 返回 2
3、Math.pow()
Math.pow(x, y) 的返回值是 x 的 y 次幂:
Math.pow(8, 2); // 返回 64
4、Math.sqrt()
Math.sqrt(x) 返回 x 的平方根:
Math.sqrt(64); // 返回 8
5、Math.abs()
Math.abs(x) 返回 x 的绝对(正)值:
Math.abs(-4.7); // 返回 4.7
6、Math.ceil()、Math.floor()
- Math.ceil(x) 的返回值是 x 上舍入最接近的整数:
- Math.floor(x) 的返回值是 x 下舍入最接近的整数:
Math.ceil(6.4); // 返回 7
Math.floor(2.7); // 返回 2
7、Math.sin()、Math.cos()
- Math.sin(x) 返回角 x(以弧度计)的正弦(介于 -1 与 1 之间的值)。
- Math.cos(x) 返回角 x(以弧度计)的余弦(介于 -1 与 1 之间的值)。
如果您希望使用角度替代弧度,则需要将角度转换为弧度:
Angle in radians = Angle in degrees x PI / 180.
Math.sin(90 * Math.PI / 180); // 返回 1(90 度的正弦)
Math.cos(0 * Math.PI / 180); // 返回 1(0 度的余弦)
Math.min() 和 Math.max()
Math.min() 和 Math.max() 可用于查找参数列表中的最低或最高值:
Math.min(0, 450, 35, 10, -8, -300, -78); // 返回 -300 Math.max(0, 450, 35, 10, -8, -300, -78); // 返回 450
8、Math.random()
Math.random() 返回介于 0(包括) 与 1(不包括) 之间的随机数。
Math.random() 总是返回小于 1 的数。
Math.random(); // 0.111
JavaScript 随机整数
Math.random() 与 Math.floor() 一起使用用于返回随机整数。
Math.floor(Math.random() * 10); // 返回 0 至 9 之间的数 Math.floor(Math.random() * 10) + 1; // 返回 1 至 10 之间的数
始终返回介于 min(包括)和 max(不包括)之间的随机数:
function getRndInteger(min, max) { return Math.floor(Math.random() * (max - min) ) + min; }
始终返回介于 min 和 max(都包括)之间的随机数:
function getRndInteger(min, max) { return Math.floor(Math.random() * (max - min + 1) ) + min; }
随机选择一个数组元素:
[’a’,’b’,’C’][Math.random()*2] //生成0-2之间的随机数