此问题已经在这里有了答案:
我在JSON文件中有一些数据,大约有20个条目。我想做的是每次页面加载时随机显示其中4个条目。
var data = [
{'name': 'Bill'},
{'name': 'Sally'},
{'name': 'George'},
{'name': 'Steve'},
{'name': 'Jill'},
{'name': 'Jeff'}
];
$.each(data, function(i) {
var name = data[i].name;
// Select 4 at random
$('.results').append('<div>' + name + '</div>');
if(i === 3) {
return false;
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="results"></div>
我能够做到这一点,使其只在条件语句中显示4,但是我如何修改它以使其选择随机的4而不是前4?
您可以使用这条鳕鱼。
var rndList=[];
var len=data.length
while(rndList.length<4){
var rnd=Math.floor((Math.random() * (len-1)) + 0);
if(rndList.indexOf(rnd)==-1)
{
rndList.push(rnd)
}
}
$.each(rndList, function(i) {
var name = data[i].name;
$('.results').append('<div>' + name + '</div>');
});