一、JavaScript 有一个内建的Math对象,它包含了一个小型的数学函数和常量库。
二、你不能创建自己的Math对象,只能用内置的Math对象。

Math对象的属性

属性 描述
PI 调用:Math.PI // π

Math对象的方法

标准数学函数也是Math的方法,包括三角函数,对数,指数,其他函数。

方法 描述
abs() 绝对值
sin(),
cos(),
tan()
标准三角函数;参数为弧度
asin(),
acos(),
atan(),
atan2()
反三角函数; 返回值为弧度
sinh(),
cosh(),
tanh()
双曲三角函数; 参数为弧度.
asinh(),
acosh(),
atanh()
反双曲三角函数;返回值为弧度.
pow(), exp(), expm1(), log10(), log1p(), log2() 指数与对数函数 一、Math.pow(n, power)
返回n的给定(power)次幂
【示例1】
alert( Math.pow(2, 10) ); // 2 的 10 次幂 = 1024
floor(),
ceil()
返回小于等于参数的最大整数;
返回大于等于参数的最小整数
min()
max()
返回一个以逗号间隔的数字参数列表中的较小或较大值(分别地)
random() 返回0和1之间的随机数。[0, 1)
round(),
fround(),
trunc()
四舍五入和截断函数
sqrt(),
cbrt(),
hypot()
平方根,立方根,所有参数平方和的平方根
两个参数平方和的平方根
sign() 数字的符号, 说明数字是否为正、负、零。
clz32(),

imul() | 在32位2进制表示中,开头的0的数量.
返回传入的两个参数相乘结果的类C的32位表现形式 | |

舍入

一、对数字进行舍入的内建函数(这些函数涵盖了处理数字小数部分的所有可能方法):
1、Math.floor
向下舍入:3.1变成3,-1.1变成-2。
2、Math.ceil
向上舍入:3.1变成4,-1.1变成-1。
3、Math.round
向最近的整数舍入:3.1变成3,3.6变成4,-1.1变成-1。
4、Math.trunc(IE 浏览器不支持这个方法)
移除小数点后的所有内容而没有舍入:3.1变成3,-1.1变成-1。
这个是总结它们之间差异的表格:

Math.floor Math.ceil Math.round Math.trunc
3.1 3 4 3 3
3.6 3 4 4 3
-1.1 -2 -1 -1 -1
-1.6 -2 -1 -2 -1

四、小数位数:将数字舍入到小数点后n位
1、乘除法
2、toFixed(n)

| 【示例】我们有1.2345,并且想把它舍入到小数点后两位,仅得到1.23。
1、有两种方式可以实现这个需求:
(1)乘除法
【示例1】要将数字舍入到小数点后两位,我们可以将数字乘以100(或更大的 10 的整数次幂),调用舍入函数,然后再将其除回。```javascript let num = 1.23456;

alert( Math.floor(num * 100) / 100 ); // 1.23456 -> 123.456 -> 123 -> 1.23

  1. 2)函数toFixed(n):将数字舍入到小数点后n位,并以字符串形式返回结果。```javascript
  2. let num = 12.34;
  3. alert( num.toFixed(1) ); // "12.3" // 这会向上或向下舍入到最接近的值,类似于Math.round:
let num = 12.36;
alert( num.toFixed(1) ); // "12.4"

① toFixed的结果是一个字符串。如果小数部分比所需要的短,则在结尾添加零:javascript let num = 12.34; alert( num.toFixed(5) ); // "12.34000",在结尾添加了 0,以达到小数点后五位 a. 我们可以使用一元加号或Number()调用,将其转换为数字:+ num.toFixed(5)。 | | —- |