// 随机数组(包括字符串数组,对象数组)
function shuffle(a) {
var len = a.length;
for (var i = 0; i < len - 1; i++) {
var index = parseInt(Math.random() * (len - i));
var temp = a[index];
a[index] = a[len - i - 1];
a[len - i - 1] = temp;
}
return a
}
例:
var b=[{'iComment':1},{'iComment':2},{'iComment':3},{'iComment':4},{'iComment':5},{'iComment':6}];
遍历的时候,让这个数组,随机排列,通过以上的方法进行数组的随机排列,渲染出来的位置就不是固定得了
或者如果数组里面都是number类型,可以用下面简单的方法:(随机一个数组)
function randomsort(a, b) {
return Math.random()>.5 ? -1 : 1;
}
var arr = [1, 2, 3, 4, 5];
arr.sort(randomsort);
随机取数组中的一项
需求:有一个数组,每次都取数组的一项,要求是随机的
var shareArr=["内容1","内容2","内容3","内容4","内容5"];
var index = Math.floor((Math.random() * shareArr.length));//随机的索引
shareArr[index]------》随机拿到数组的一项
随机取到1,2,3:
var shareArr = [1, 2, 3];
var indexs = Math.ceil((Math.random() * shareArr.length));
取0-19间的随机数
function random(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}var i = random(0, 19) //这里的i取到的是0-19之间的数