我正在尝试为加载到三个不同无序列表中的三个随机数字集创建一个循环。
每个列表应具有三个唯一的随机数。我很接近,但是我的代码正在加载相同的数字,并且我尝试执行 for 循环,但它似乎正在加载相同的数组,并且我想要三个随机的唯一数组。
$(document).ready(function () {
var arr = [];
for (var i = 0, l = 4; i < l; i++) {
rand = Math.random(3, 7).toFixed(2);
arr.push('<li>' + 10 + rand * 1 + '</li>')
$("." + i).append(arr);
};
});
最佳答案
@Bergi 是正确的。如果您想要 3 到 7 之间的数字,实现它的一种方法是 3 + 4 * Math.random()
,因为 Math.random()
将返回一个数字0 到 1 之间(不包括 1)。
此外,如果您想为每个 ul 创建一个唯一的列表,您可以迭代每个 ul 并为其创建一个列表,如下所示:
var $lists = $(".1,.2,.3");
$lists.each(function(index, list) {
var arr = [];
for (var i = 0, l = 4; i < l; i++) {
rand = (3+4*Math.random()).toFixed(2);
arr.push('<li>'+10+ rand * 1+'</li>')
}
$(list).append(arr);
});
关于JavaScript 数组和随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25892711/