Math是js的内置对象
Math(算数)对象的作用是:执行普通的算数任务。
Math 对象提供多种算数值类型和函数。无需在使用这个对象之前对它进行定义。
(1)算数值(math的属性)
1)math.PI圆周率
PI:PI 属性就是 π,即圆的周长和它的直径之比。这个值近似为 3.14
语法:
Math.PI
返回值:返回圆周率。
2)
(2)算术方法(math的方法)
1)random()获取随机数
random() 方法:可返回介于 0(包含) ~ 1(不包含) 之间的一个随机数。
语法:Math.random()
返回值:0.0 ~ 1.0(不包含1) 之间的一个伪随机数。
Demo1:获取一个0-10之间的随机整数。
每次刷新后输出的num都不一样:
Demo2:获取一个20-120的随机整数。
Demo3:获取一个20-80的随机整数。
Demo4:封装一个函数,可以输入任意区间获得区间内的随机数。
① 确定区间:随机0-1内数字。1乘任意数为任意数,0乘任意数为0。
② 将区间两边的值相减,做乘数,区间两边较小的值做加数。
例:想要获得20-80区间的值首先要让0变20,只能加20因此区间内[0+20,1+20]。
再让1变80。可以1乘60,再加20。
由上得:[0*60+20,1*60+20]===>[20,80]
注意:若是封装的函数没有判断ab的大小,相减得出负数,则最后随机数的结果会有1的差别。
原因:随机数范围:[0,1]。当相减得负数,则
例:b - a=10 - 20= - 10
[0*(-10),1*(-10)]+20=====》[20,10]
1)Ceil()带小数的数字向上取整(指只入不舍,只进位)
Ceil:方法可对一个数进行上舍入。
注意:ceil() 方法执行的是向上取整计算,它返回的是大于或等于函数参数,并且与之最接近的整数。
语法:
Math.ceil(x)
X:必须是一个数字。(参数必需)
返回值:返回一个大于等于x,与x最接近的数。
2)Floor()向下取整(指只舍不入)
Floor:方法返回小于等于x的最大整数。
语法:
Math.floor(x)
x:任意数值或表达式(参数必需)
返回值:返回小于等于x,且与x最接近的整数。
3)round()四舍五入
round() :方法可把一个数字舍入为最接近的整数(小数小于等于4就舍去,大于等于5就进一)。
语法:
Math.round(x)
X:必需。必须是数字。
返回值: 最接近的整数。
4)abs()绝对值
绝对值:不管数字是正数还是负数一定得到该数正数。
Abs:该方法返回一个绝对值。
语法:
Math.abs(x)
X:必须是一个数值。(必需参数)
返回值:x的绝对值,若x不是数字,则返回NaN,若x是null则返回0.
5)Pow()求次方
pow(): 方法返回 x 的 y 次幂。
语法:
Math.pow(x,y)
X:底数,必须是数字。(参数必需)
Y:幂数,必须是数字。(参数必需)
返回值:返回x的y次幂。
6)Sqrt()开平方根
sqrt():方法可返回一个数的平方根。
语法:
Math.sqrt(x)
X:必须是大于等于0的数字。(参数必需)
返回值:返回x的平方根。若x小于0,则返回NaN。
7)Max()最大值
max() :方法可返回两个指定的数中带有较大的值的那个数。
语法:
Math.max(param1,param2,……)
Param:(可选)一个或多个值。
返回值:返回param中最大的那个数。若没有参数,则返回-Infinity,若有某个参数为NaN,无法转换成数字的值,则返回NaN.
8)Min()求最小值
min() :方法可返回指定的数字中带有最小值的数字。
语法:
Math.min(param1,param2……)
Param:(可选)一个或多个值。
返回值:返回param中最小的数。如果没有参数,则返回 Infinity。如果有某个参数为 NaN,或是不能转换成数字的非数字值,则返回 NaN。
9)正弦函数sin()
正弦:角度所对的边与斜边的比。
语法:
Math.sin(x)
10)余弦函数cos()
cos() 方法可返回一个数字的余弦值。
语法:
Math.cos(x)