function arraySample(array, n) {
var _result = [];
var _index = 0;
// 防止原数组被改变
var _arrayTemp = array.slice(0);
if (array == null || array.length == 0) {
return _result;
}
// 随机获取一个值
if (n == null) {
_index = Math.floor(Math.random() * array.length);
_result.push(array[_index]);
} else {
// 随机获取N个值
for (var i = 0; i < n; i++) {
_index = Math.floor(Math.random() * _arrayTemp.length);
if (_arrayTemp[_index]) {
_result.push(_arrayTemp[_index]);
}
// 删除该元素
_arrayTemp.splice(_index, 1);
}
}
return _result;
}
网友评论