Math.random():
Math.random():
用来生成0~1之间的一个随机数,包含0不包含1。
Math.random() * m:
Math.random() * m:
表示生成0~m之间的随机数,例如“Math.random()*10”表示生成0-10之间的随机数。
Math.random() * m + n:
Math.random() * m + n:
表示生成 n ~ (m+n) 之间的随机数,例如“Math.random()*10+8”表示生成8-18之间的随机数。
Math.random() * m
先生成 0 ~ m 之间的随机数,再+ n
,就变成(0+n) ~ (m+n)
;
Math.random() * m - n:
Math.random() * m - n:
表示生成 -n ~ (m-n) 之间的随机数,例如“Math.random()*10-8”表示生成-8-2之间的随机数。
Math.random() * m - m:
Math.random() * m - m:
表示生成-m~0之间的随机数,例如“Math.random()*10-10”表示生成-10-0之间的随机数。
生成0~m之间的随机整数(包括0和m):
Math.floor(Math.random()*(m+1)):
注意这里是有括号的,与上述没括号是不一样的,其中Math.floor()表示向下取整,例如,Math.random()(4+1) 表示取得0~5之间的任意数,Math.floor(Math.random()(4+1)) 表示取得 0~4之间的任意数,把4替换成m就能理解这条式子。
生成1到m之间的随机整数(包括1和m):
Math.floor(Math.random()*m) + 1
Math.floor(Math.random()*m): 表示生成[0,m-1]的任意数,再次+1则变成 [0+1,(m-1)+1] 即1~m。
生成n到m之间的随机整数(包括n和m):
Math.floor(Math.random()*(m-n+1)) + n
Math.floor(Math.random()*(m-n+1)): 表示生成[0,m-n]的任意数,再次+n则变成 [0+n,(m-n)+n] 即n~m。