di-shan-utils
Version:
JavaScript 函数库、工具类
25 lines (21 loc) • 476 B
JavaScript
var random = require('./random')
var values = require('./values')
/**
* 将一个数组随机打乱,返回一个新的数组
*
* @param {Array} array 数组
* @return {Array}
*/
function shuffle (array) {
var index
var result = []
var list = values(array)
var len = list.length - 1
for (; len >= 0; len--) {
index = len > 0 ? random(0, len) : 0
result.push(list[index])
list.splice(index, 1)
}
return result
}
module.exports = shuffle