Date对象:表示一个时间
创建实时时间
创建指定时间
var d = new Date("10/21/2021 20:14:30");
创建时间戳
time = Date.now();//返回当时时间戳
时间戳:从格林威治标准时间的“1970.1.1 00:00:00”到当前日期所花费的毫秒数
Math对象:表示数学运算
math对象封装了数学运算相关的属性和方法
与其他对象相同,它不是构造函数,属于工具类,无需创建对象
Math.PI;- 返回π的值
Math.abs(x);- 返回x的绝对值
Math.sqrt(x);- 返回x的平方根
Math.E;- 返回e的值
Math.round(x);- 返回四舍五入后的x
Math.ceil(x);- 返回向上取整后的x
Math.floor(x);- 返回向下舍去的x
Math.random();- 返回0~1之间的随机数
Math.max();- 返回()里多个值中最大的值
Math.min();- 返回()里多个值中最小的值
Math.pow(a,b);- 返回a的b次幂
Math.random()的用法
得到一个两数之间的随机整数:
这个例子返回了一个在指定值之间的随机整数。这个值大于等于min (如果 min 不是整数,则大于等于 min 的向上取整数),且小于(不等于)max。
function getRandomInt(min, max) {min = Math.ceil(min);max = Math.floor(max);return Math.floor(Math.random() * (max - min)) + min; //不含最大值,含最小值}
得到一个两数之间的随机整数,包括两个数在内:
上一个例子提到的函数 getRandomInt() 结果范围包含了最小值,但不含最大值。如果你的随机结果需要同时包含最小值和最大值,怎么办呢? getRandomIntInclusive() 函数可以实现。
function getRandomIntInclusive(min, max) {min = Math.ceil(min);max = Math.floor(max);return Math.floor(Math.random() * (max - min + 1)) + min; //含最大值,含最小值}
⬆️也许很容易想到用 Math.round() 四舍五入来实现这种需求,但是这会导致你的随机数处于一个不均匀的分布,这可能不符合你的需求。
