splice实现应用

2018-08-18  本文已影响0人  礼知白

实现push方法

function newPush(arr){
    for(var i=1; i<arguments.length;i++){
        arr.splice(arr.length, 0, arguments[i])
    }
    return arr.length
}
var arr = [3, 4, 5]
console.log(arr.push(10));//4
console.log(arr);//[3, 4, 5, 10]
console.log(newPush(arr, 12));//5
console.log(arr);//[3, 4, 5, 10, 12]

实现pop方法

function newPop(arr){
  return arr.splice(arr.length-1, 1)[0]//需要返回数组的元素值,添加[0]
}
var arr = [3, 4, 5]
console.log(arr.pop());//5
console.log(arr);//[3, 4]
console.log(newPop(arr));//4
console.log(arr);//[3]

实现shift方法

function newShift(arr){
  return arr.splice(0, 1)[0];
}
var arr = [3, 4, 5]
arr.shift();//
console.log(arr);//[4, 5]
newShift(arr);//
console.log(arr);//[5]

实现unshift方法

function newUnshift(arr, value){
  arr.splice(0, 0, value);
  return arr.length;
}
var arr = [3, 4, 5]
console.log(arr.unshift(10));//4
console.log(arr);//[10, 3, 4, 5]
console.log(newUnshift(arr, 20));//5
console.log(arr);//[20, 10, 3, 4, 5]
上一篇 下一篇

猜你喜欢

热点阅读