生成一个介于 0 和 x 之间但不超过 10 的随机数
Generate a random number that is between 0 and x but no more than 10
目前我使用以下方法生成随机数;
Math.floor(Math.random() * (listItems.length - 0))
问题在于 listItems.length
可能介于 3 或 20,000 之间,我只需要一个较小的数字,最好不超过 10,但它也需要小于或等于 listItems.length
,所以显然我不能只生成 0 到 10 之间的数字,因为我可以得到 7,但列表长度可能只有 5,这会在以后给我带来问题。
有什么办法可以做到这一点吗?
var rand = Math.random() * Math.min(listItems.length, 10) | 0;
目前我使用以下方法生成随机数;
Math.floor(Math.random() * (listItems.length - 0))
问题在于 listItems.length
可能介于 3 或 20,000 之间,我只需要一个较小的数字,最好不超过 10,但它也需要小于或等于 listItems.length
,所以显然我不能只生成 0 到 10 之间的数字,因为我可以得到 7,但列表长度可能只有 5,这会在以后给我带来问题。
有什么办法可以做到这一点吗?
var rand = Math.random() * Math.min(listItems.length, 10) | 0;