time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

shuffle.js (678B)


      1 var arrayShuffle = require('./_arrayShuffle'),
      2     baseShuffle = require('./_baseShuffle'),
      3     isArray = require('./isArray');
      4 
      5 /**
      6  * Creates an array of shuffled values, using a version of the
      7  * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).
      8  *
      9  * @static
     10  * @memberOf _
     11  * @since 0.1.0
     12  * @category Collection
     13  * @param {Array|Object} collection The collection to shuffle.
     14  * @returns {Array} Returns the new shuffled array.
     15  * @example
     16  *
     17  * _.shuffle([1, 2, 3, 4]);
     18  * // => [4, 1, 3, 2]
     19  */
     20 function shuffle(collection) {
     21   var func = isArray(collection) ? arrayShuffle : baseShuffle;
     22   return func(collection);
     23 }
     24 
     25 module.exports = shuffle;