如何防止在for循环中从数组中选择两次数?在这种情况下,我想确保pictureNo每次都是唯一的。防止数组项被选中两次
$(document).ready(function() {
// Generate timeline items
var timelineItemCount = Math.floor(Math.random() * 9) + 1;
for(i=0;i<timelineItemCount;i++)
{
generateTimeline();
}
});
function generateTimeline() {
// Select gender
var genderArray = ['male','female'];
var gender = genderArray[Math.floor(Math.random()*genderArray.length)];
// Select profile picture - how do I prevent the same number from being selected once here
var pictureNo = Math.floor(Math.random() * 19) + 1;
// Create timeline entry
$('#home-page').append($('<div class="timeline-item"><img src="assets/img/' + gender + '_profile' + pictureNo + '.jpg" alt="" class="img-rounded profile"></div>'));
}
尝试创建一个条件性别存在时,你不应该打印它。这是我猜的解决方案。一个简单的条件问题。 – frogcoder 2015-02-24 08:01:04
创建一个抓取随机数的函数。并创建一个包含以前选择的随机数字的数组。检查新的随机数是否在数组中有一个索引,如果它有,然后重新运行随机函数,直到你将有一个唯一的随机数。 – 2015-02-24 08:09:46