Nodejs Array Clone clone()

Here you can find the source of clone()

Method Source Code

'use strict';//w  ww  .j  a  v a 2s. c om

function compose() {
    var fns = arguments;
    return function () {
        var i = fns.length-1;
        var result = fns[i--].apply(this, arguments);
        while (i >= 0) {
            result = fns[i--].call(this, result);
        }
        return result;
    };
}

Array.prototype.clone = function() {
    var result = this.slice();
    for (var i = 0; i < this.length; i++) {
        if (this[i].clone) {
            result[i] = this[i].clone();
        }
    }
    return result;
}


// given a string of moves, return a list of move objects
var parseMoves = function (movesString) {
    var moveRegex = /([UDFBLR])(2?)('?)/g;
    var moves = [];
    var match;
    while ((match = moveRegex.exec(movesString)) !== null) {
        var face = match[1];
        var angle = (match[2]) ? Math.PI : Math.PI/2.0; // check for the 2
        if (match[3]) { // check for the prime
            angle = -angle;
        }
        moves.push({ face: face, angle: angle });
    }
    return moves;
}

Related

  1. clone()
    Array.prototype.clone = function () {
      return this.slice(0);
    };
    
  2. clone()
    Array.prototype.clone = function() {
      return this.slice(0);
    };
    
  3. clone()
    Array.prototype.clone = function()
      return Array.prototype.slice.call(this, 0);
    
  4. clone()
    Array.prototype.clone = function() {
      copy = [];
      for(var i=0; i<this.length; ++i)
        copy.push(this[i]);
      return copy;
    
  5. clone()
    function randomValue(min, max) {
      return Math.floor(Math.random() * (max - min + 1) + min);
    };
    function randomFromArray(arr) {
      return arr[Math.floor(Math.random() * arr.length)];
    };
    Array.prototype.clone = function() {
        var arr = this.slice(0);
        for( var i = 0; i < this.length; i++ ) {
    ...
    
  6. clone()
    Array.prototype.clone = function(){
        if ( this[0].constructor == Array ) {
            var ar, n;
            ar = new Array( this.length );
            for ( n = 0; n < ar.length; n++ ) {
                ar[n] = this[n].clone();
            return ar;
        return Array.apply( null, this );
    
  7. clone()
    Array.prototype.clone = function(){
      var ret = [];
      for (var i=0;i<this.length;i++){
        ret[i] = this[i];
      return ret;
    };
    
  8. clone()
    Array.prototype.clone = function() {
      var newArray = [];
      for (var i = 0; i < this.length; i++) {
        if (typeof(this[i]) == 'object' || typeof(this[i]) == 'function') {
          newArray[i] = this[i].clone();
        } else {
          newArray[i] = this[i];
      return newArray;
    };
    
  9. clone()
    Array.prototype.clone = function () {
        return this.slice(0);
    };