Nodejs Array Shuffle shuffle()

Here you can find the source of shuffle()

Method Source Code

Array.prototype.shuffle = function() {
  var i = this.length, j, tempi, tempj;
  if ( i == 0 ) return false;
  while ( --i ) {
     j       = Math.floor( Math.random() * ( i + 1 ) );
     tempi   = this[i];//  www .  j a  v  a  2s .c om
     tempj   = this[j];
     this[i] = tempj;
     this[j] = tempi;
  }
  return this;
};

function asyncLoop(iterations, func, callback) {
    var index = 0;
    var done = false;
    var loop = {
        'next': function() {
            if (done) {
                return;
            }

            if (index < iterations) {
                index++;
                func(loop);

            } else {
                done = true;
                callback();
            }
        },

        'iteration': function() {
            return index - 1;
        },

        'break': function() {
            done = true;
            callback();
        }
    };
    loop.next();
    return loop;
}

Related

  1. shuffle()
    Array.prototype.shuffle = function()
      var s = [];
      while (this.length) s.push(this.splice(Math.random() * this.length, 1));
      while (s.length) this.push(s.pop());
      return this;
    };
    Array.prototype.indexOf = function( element )
      for( var i in this )
        if( this[i] == element )
          return i;
      return -1;
    };
    String.prototype.copy = function()
      return this.substring( 0, this.length );
    };
    String.prototype.trim = function( ext )
      var chars = [
        " ", "\t", "\n", "\r"
      ];
      var s = this.copy();
      if( arguments.length > 0 ){
        for( var i in ext ){
          chars.push( ext[i] );
      while( chars.indexOf( s.charAt( 0 ) ) != -1 ){
        s = s.substring( 1, s.length );
      while( chars.indexOf( s.charAt( s.length-1 ) ) != -1 ){
        s = s.substring( 0, s.length-1 );
      return s;
    };
    
  2. 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;
    window.getDeck = function() {
      var ranks = [2, 3, 4, 5, 6, 7, 8, 9, 10, 'jack', 'queen', 'king', 'ace'];
      var suits = ['clubs', 'diamonds', 'hearts', 'spades'];
      var cards = [];
      ranks.forEach(function(rank, index) {
        suits.forEach(function(suit, index) {
          cards.push(rank + "_of_" + suit);
        });
      });
      return cards;
    $(function() {
    })
    
  3. shuffle()
    Array.prototype.shuffle = function() {
          var tmp, rand;
          for(var i =0; i < this.length; i++){
                  rand = Math.floor(Math.random() * this.length);
                  tmp = this[i];
                  this[i] = this[rand];
                  this[rand] = tmp;
    
  4. shuffle()
    Array.prototype.shuffle = function(){
      for (var i = 0; i < this.length; i++){
          var a = this[i];
          var b = Math.floor(Math.random() * this.length);
            this[i] = this[b];
            this[b] = a;
    module.exports = {
    ...
    
  5. shuffle()
    Array.prototype.shuffle = function() {
        var size = this.length;
        for (var i = 0; i < size; i++) {
            var j = Math.floor(Math.random() * size);
            if (i !== j) {
                var tmp = this[i];
                this[i] = this[j];
                this[j] = tmp;
    };
    
  6. shuffle()
    Array.prototype.shuffle=function() {
      this.sort(function() { return Math.random()-0.5;});
    };
    Array.prototype.remove = function(from, to) {
      var array=this;
      var rest = array.slice((to || from) + 1 || array.length);
      array.length = from < 0 ? array.length + from : from;
      return array.push.apply(array, rest);
    };
    ...
    
  7. 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;
    
  8. shuffle()
    Array.prototype.shuffle = function (){ 
        for(var j, x, i = this.length; i; j = Math.floor(Math.random() * i), x = this[--i], this[i] = this[j], this[j] = x);
        return this;
    };
    String.prototype.hashCode = function(){
      var hash = 5381;
      for (i = 0; i < this.length; i++) {
        char = this.charCodeAt(i);
        hash = ((hash<<5)+hash) + char;
    ...
    
  9. shuffle()
    Array.prototype.shuffle = function () {
      var i = this.length, j, temp;
      if ( i === 0 ) return false;
      while ( --i ) {
         j = Math.floor( Math.random() * ( i + 1 ) );
         temp = this[i];
         this[i] = this[j]; 
         this[j] = temp;