artdaq_node_server  v1_00_08
 All Classes Namespaces Files Variables Pages
_shuffleSelf.js
1 var baseRandom = require('./_baseRandom');
2 
11 function shuffleSelf(array, size) {
12  var index = -1,
13  length = array.length,
14  lastIndex = length - 1;
15 
16  size = size === undefined ? length : size;
17  while (++index < size) {
18  var rand = baseRandom(index, lastIndex),
19  value = array[rand];
20 
21  array[rand] = array[index];
22  array[index] = value;
23  }
24  array.length = size;
25  return array;
26 }
27 
28 module.exports = shuffleSelf;