Optimize _.shuffle.

This commit is contained in:
John-David Dalton
2014-07-08 00:36:52 -07:00
parent 479a7e441d
commit 4ddc3b518b

View File

@@ -5242,13 +5242,16 @@
function shuffle(collection) {
collection = toIterable(collection);
var index = -1,
var index = 0,
length = collection.length,
result = Array(length);
if (length) {
result[index] = collection[index];
}
while (++index < length) {
var value = collection[index],
rand = baseRandom(0, index);
rand = baseRandom(0, index - 1);
result[index] = result[rand];
result[rand] = value;