Nodejs Array Shuffle shuffle()

Here you can find the source of shuffle()

Method Source Code

Array.prototype.shuffle = function () {
    var currentIndex = this.length, temporaryValue, randomIndex;

    while (0 !== currentIndex) {
        // Pick a remaining element...
        randomIndex = Math.floor(Math.random() * currentIndex);
        currentIndex -= 1;/*from   w w  w.  j  a  v  a 2 s.  c  o  m*/

        // And swap it with the current element.
        temporaryValue = this[currentIndex];
        this[currentIndex] = this[randomIndex];
        this[randomIndex] = temporaryValue;
    }
};

Related

  1. shuffle()
    Array.prototype.shuffle = function() {
      for (var i = this.length - 1; i > 0; i--) {
        var num = Math.floor(Math.random() * (i + 1)),
          d = this[num];
        this[num] = this[i];
        this[i] = d;
      return this;
    };
    ...
    
  2. shuffle()
    Array.prototype.shuffle = function() {
        var i = this.length, j, temp;
        if ( i == 0 ) {
            return this;
        while ( --i ) {
            j         = Math.floor( Math.random() * ( i + 1 ) );
            temp      = this[ i ];
            this[ i ] = this[ j ];
    ...
    
  3. shuffle()
    Array.prototype.shuffle = function () {
      var arr  = new Array();
      for (var i=0 ; i<this.length ; i++) {
        arr.push(this[i]);
      for(var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x);
      return arr;
    
  4. shuffle()
    Array.prototype.shuffle = function() {
      for(var j, x, i = this.length; i; j = parseInt(Math.random() * i), x = this[--i], this[i] = this[j], this[j] = x);
      return this;
    };
    
  5. shuffle()
    Array.prototype.shuffle=function(){
      var i = this.length,j,temp; 
      while (--i > 0) {
          j=Math.floor(Math.random()*(i));
          temp=this[j];
          this[j]=this[i];
          this[i]=temp;
      return this;
    ...
    
  6. shuffle()
    Array.prototype.shuffle = function() {
        var i = this.length;
        while (--i) {
            var j = Math.floor(Math.random() * (i + 1))
            var temp = this[i];
            this[i] = this[j];
            this[j] = temp;
        return this; 
    ...
    
  7. shuffle()
    Array.prototype.shuffle = function() {
      var array = this.slice();
      var current = this.length;
      var temp;
      var random;
      while(current !== 0) {
        random = Math.floor(Math.random() * current);
        current -= 1;
        temp = array[current];
    ...
    
  8. shuffle()
    Array.prototype.shuffle = function() {
      var currentIndex = this.length, temporaryValue, randomIndex;
      while (0 !== currentIndex) {
        randomIndex = Math.floor(Math.random() * currentIndex);
        currentIndex -= 1;
        temporaryValue = this[currentIndex];
        this[currentIndex] = this[randomIndex];
        this[randomIndex] = temporaryValue;
      return this;
    
  9. shuffle()
    if(Array.prototype.shuffle === undefined) {
        Array.prototype.shuffle = function() {
            var counter = this.length;
            while (counter > 0) {
                var temp;
                var index;
                index = Math.floor(Math.random() * counter);
                counter--;
                temp = this[counter];
    ...