1、重构push方法
var arr = [1,2,3];
Array.prototype.myPush = function(){
for(var i=0; i<arguments.length;i++){
this[this.length] = arguments[i]
}
return this.length
}
var res = arr.myPush(‘a’,‘b’,‘c’,1,2,3,4);
console.log(arr);
console.log(res);
2、重构pop方法
var arr = [1,2,3];
Array.prototype.myPop = function(){
var test = this[this.length - 1]
this.length–;
return test;
}
var res = arr.myPop();
console.log(arr);
console.log(res);
3、重构shift方法
var arr = [1,2,3];
Array.prototype.myShift = function(){
var test= this[0];
for(var i=1;i<this.length;i++){
this[i-1] = this[i];
}
this.length–;
return test;
}
var res= arr.myShift();
console.log(arr);
console.log(res);
4、重构unshift方法
var arr = [1,2,3];
Array.prototype.myUnshift = function(){
var test =[];
for(var i=0;i<arguments.length;i++){
test[test.length] = arguments[i];
}
for(var j=0;j<this.length;j++){
test[test.length] = this[j];
}
for(var k=0;k<test.length;k++){
this[k] = test[k];
}
return this.length;
}
var res = arr.myUnshift(‘a’);
console.log(arr);
console.log(res);