【发布时间】:2013-11-17 14:10:44
【问题描述】:
var arr1 = [1, 2, 3, 4, 5];
如何对这个数组元素进行混洗,以便新数组以随机顺序包含这些元素而没有任何重复元素?
例如:new array = [4, 1, 3, 5, 2];
【问题讨论】:
var arr1 = [1, 2, 3, 4, 5];
如何对这个数组元素进行混洗,以便新数组以随机顺序包含这些元素而没有任何重复元素?
例如:new array = [4, 1, 3, 5, 2];
【问题讨论】:
作为一个长期使用 jQuery 作为“金锤”的人,我的建议是为每项任务使用适当的工具。在这种情况下,我将使用underscore.js 中的shuffle() 方法来完成任务。
var new_array=_.shuffle([1, 2, 3, 4, 5, 6]);
【讨论】:
var arr = [1,2,3,4,5,6];
arr = shuffle(arr);
function shuffle(arr) {
for(var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x);
return arr;
}
【讨论】: