什么是内置对象?
在JavaScript中,内置对象指的是语言内部预先定义好的对象,它们提供了丰富的属性和方法供开发人员使用。
回顾一下,我们在之前的项目中是否使用过这些内置对象呢?例如:document.write() 和 console.log() 都是利用了内置对象的功能。
Math对象介绍
Math对象是JavaScript提供的一个用于数学计算的对象,它提供了一系列执行数学运算的方法。
Math对象包含以下常用方法:
random(): 生成一个介于0到1之间的随机数(含0,不含1)。
ceil(): 向上取整。
floor(): 向下取整。
round(): 四舍五入。
max(): 找出最大数。
min(): 找出最小数。
pow(): 计算幂。
sqrt(): 计算平方根。
abs(): 计算绝对值。
console.log(Math.max(1, 2, 3, 4, 5)) //5
console.log(Math.min(1, 2, 3, 4, 5)) //1
console.log(Math.abs(-1)) //1
生成指定范围内的随机数
使用Math.random()函数可以生成一个介于0到1之间的随机小数(含0,不含1)。基于此,我们可以生成任何范围内的随机整数。
- 要生成0到10之间的随机整数,可以使用:
Math.floor(Math.random() * (10 + 1))
- 要生成5到10之间的随机整数,可以使用:
Math.floor(Math.random() * (5 + 1)) + 5
- 要生成N到M之间的随机整数,可以使用:
Math.floor(Math.random() * (M - N + 1)) + N
// 左闭右开 能取到0但是取不到1 之间的随机小数
console.log(Math.random()) //每次刷新结果都不一样
// 0-10之间的整数
console.log(Math.floor(Math.random() * 11))
let arr = ['red', 'green', 'blue']
let random = Math.floor(Math.random() * arr.length)
console.log(arr[random])
function getRandom(N, M) {
return Math.floor(Math.random() * (M - N + 1)) + N
}
console.log(getRandom(5, 10))
随机点名示例
任务需求:从数组['赵云', '黄忠', '关羽', '张飞', '马超', '刘备', '曹操']中随机选择一个名字并显示在网页上。
随机点名功能增强
改进需求:每次随机显示一个名字时,确保不会重复显示。当前实现是每次刷新页面都会重置所有状态,后续可以通过DOM操作实现点击一次删除一个的效果。
