Math.random
用来获取在[0,1)范围内的随机数。
会配合Math.floor()来对随机数进行取整(向下取整)。
[min,max]的实现
那如何实现随机获取从min到max的整数呢?
实现代码
Math.floor(Math.random() * (max - min + 1) + min)
实现原理(过程)
- 目标:
[0,1)>[min,max] - 赋最大值
max:[0,1)*max=[0,max) - 赋最小值
min:[0,1)*max+min=[min,max+min) - 处理最大值
max:[0,1)*(max-min+1)+min=[min,max+1)=[min,max]
由于要对随机数进行向下取整,所以要在处理最大值max那一步,对max进行+1处理。