积累些常用的方法, 都是随写的, 不好之处, 望指出。
getRandomItem(arr)函数如下:
var getRandomItem = function () {
var preItem = null; return function (arr) { var index = Math.floor(Math.random() * arr.length),
item = arr[index],
result; arr = arr.sort(function() { // 数组随机排序(在这里有点多此一举,可去掉 哈哈)
return Math.random() > 0.5 ? -1 : 1;
}); if (preItem != item) {
result = preItem = item; } else {
result = getRandomItem(arr);
}; return result;
};
}();
测试一下是否有重复的:
var arr=[1, 54, 3, 23, 15, 6, 27, -8, 49, 10, 62, 33, 15, 74, 86, 99];
for (var i = 0, len = 1000; i < len; i ++) {
console.log(getRandomItem(arr));
};