Nodejs Array Move move(from, to)

Here you can find the source of move(from, to)

Method Source Code

// Takes an exiting element in the array and moves it to a new position

Array.prototype.move = function(from, to) {

    // Prototypes throw TypeErrors when the context or arguments are invalid

    if (Object.prototype.toString.call(this) !== '[object Array]') {
        throw new TypeError("`this` must be Array, not " + typeof this);
    }//from   ww  w  .  j  av  a 2  s .co  m

    if (typeof from !== 'number') {
        throw new TypeError("argument[0] must be number, not " + typeof from);
    }

    if (typeof to !== 'number') {
        throw new TypeError("argument[1] must be number, not " + typeof to);
    }

    var element = this[from];

    this.splice(from, 1);
    this.splice(to, 0, element);

    return this;
};

Related

  1. move(from, to)
    Array.prototype.move = function (from, to) {
      this.splice(to, 0, this.splice(from, 1)[0]);
    };
    
  2. move(from, to)
    Array.prototype.move = function (from, to) {
      this.splice(to, 0, this.splice(from, 1)[0]);
    };
    
  3. move(from, to)
    Array.prototype.move = function(from, to) {
      if (from >= this.length) return 'no target'
      var a = this.concat()
      var e = a.splice(from, 1)[0]
      if (to > a.length) {
        a[to] = e
      } else {
        a.splice(to, 0, e)
      return a
    var ArrayTest = ['a', 'b', 'e']
    console.log("the origin array below")
    console.log(ArrayTest.toString())
    var newArr = ArrayTest.move(0, 2)
    console.log((newArr).toString() + "\nWE DID ITTT :D")
    
  4. move(oldIndex, newIndex)
    Array.prototype.move = function(oldIndex, newIndex) {
      if (isNaN(newIndex) || isNaN(oldIndex) || oldIndex < 0 || oldIndex >= this.length) {
        return;
      if (newIndex < 0) {
        newIndex = this.length - 1;
      } else if (newIndex >= this.length) {
        newIndex = 0;
      this.splice(newIndex, 0, this.splice(oldIndex, 1)[0]);
      return newIndex;
    };
    
  5. move(oldIndex,newIndex)
    Array.prototype.move = function(oldIndex,newIndex){
      return this.splice(newIndex, 0, this.splice(oldIndex, 1)[0]);