文章目录
- 前言
- 常用属性
- 常用方法
- 实例参考
前言
除了简单的加减乘除,在某些长和开发者需要进行更为复杂的数学运算。JavaScript的Math对象提供了一系列属性和方法,能够满足大多数场合的需求。
Math对象是JavaScript的全局对象,不需要由函数进行创建。有且只有一个Math对象。
常用属性
属性 | 说明 |
Math.E | 返回值e(自然对数的底数) |
Math.LN10 | 返回10的自然对数 |
Math.LN2 | 返回2的自然对数 |
Math.LOG2E | 返回以2为底的e的对数 |
Math.LOG10E | 返回以10为底的e的对数 |
Math.PI | 返回圆周率π |
Math.SQRT1_2 | 返回1/2的平方根 |
Math.SQRT2 | 返回2的平方根 |
常用方法
方法 | 说明 |
Math.abs(x) | 返回x的绝对值 |
Math.acos(x) | 返回x的反余弦值,其中x的范围为[-1,1],返回值的范围为[0,π] |
Math.asin(x) | 返回x的反正弦值,其中x的范围为[-1,1],返回值的范围为[-π/2,π/2] |
Math.atan(x) | 返回x的反正切值,返回值的范围为[-π/2,π/2] |
Math.atan2(y,x) | 返回原点和点(x,y)的连线与x正半轴的夹角,夹角范围为[-π,π] |
Math.cos(x) | 返回x的余弦值 |
Math.exp(x) | 返回e的x次方 |
Math.log(x) | 返回x的自然对数 |
Math.pow(x) | 返回x的y次方 |
Math.sin(x) | 返回x的正弦值 |
Math.sqrt(x) | 返回x的平方根,x必须大于或等于0 |
Math.tan(x) | 返回x的正切值 |
实例参考
静态常量值PI(圆周率)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
//静态常量值PI(圆周率)
var result1 = Math.PI;
console.log(result1);
</script>
</body>
</html>
abs(x) 获取绝对值
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.abs(12));
console.log(Math.abs(-12));
</script>
</body>
</html>
ceil(x)上舍入,返回大于x的值中的最小整数值
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.ceil(5.1));//6
console.log(Math.ceil(5.4));//6
console.log(Math.ceil(5.5));//6
console.log(Math.ceil(5.9));//6
</script>
</body>
</html>
floor(x)下舍入,返回小于x的值中的最大整数值
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.floor(5.9));//5
console.log(Math.floor(5.5));//5
console.log(Math.floor(5.4));//5
console.log(Math.floor(5.1));//5
</script>
</body>
</html>
round()四舍五入,小于0.5的舍去,大于等于0.5,进一
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.round(5.1))//5
console.log(Math.round(5.4))//5
console.log(Math.round(5.5))//6
console.log(Math.round(5.9))//6
</script>
</body>
</html>
Math.random():返回一个[0.0,1.0)之间的浮点数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
//Math.random():返回一个[0.0,1.0)之间的浮点数
console.log(Math.random());
//Math.random()*10:返回一个[0.0,10.0)之间的浮点数
console.log(Math.random()*10);
//parseInt(Math.random()*10):返回一个[0,10)之间的整数
console.log(parseInt(Math.random()*10));
</script>
</body>
</html>
parseInt(Math.random()*(num2-num1)+num1):返回一个[num1,num2)之间的整数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(parseInt(Math.random()*22+39));
</script>
</body>
</html>
max(数据1,数据2,…,数据n):获取多个数据中的最大值
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.max(10,23,52));
</script>
</body>
</html>
min(数据1,数据2,…,数据n):获取多个数据中的最小值
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.min(10,23,65,3,89));//3
</script>
</body>
</html>
pow(x,y):获取x的y次方结果
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.pow(9,3));
</script>
</body>
</html>
sqrt(x):返回x的平方根
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Math对象</title>
</head>
<body>
<script>
console.log(Math.sqrt(25));//5
</script>
</body>
</html>