0
var ProtVar = function(arr){
this.gr1 = [];
this.gr2 = [];
this.arr = arr;
return this;
}
ProtVar.prototype.setArrs = function(){
this.gr1 = this.arr;
this.gr2 = this.arr;
return this;
}
ProtVar.prototype.shiftGr1 = function(){
this.gr1.shift();
return this;
}
ProtVar.prototype.showData = function(){
console.log("gr1 = ", this.gr1.length, this.gr1);
console.log("gr2 = ", this.gr2.length, this.gr2);
console.log("arr = ", this.arr.length, this.arr);
return this;
}
var protVar = new ProtVar([1,2,3,4]).setArrs().shiftGr1().showData();
Как скопировать массив без ссылки на тот же массив?Скопируйте массив без ссылки на него
Я понял, как это сделать с slice(0);
см. Ниже.
ProtVar.prototype.setArrs = function(){
this.gr1 = this.arr.slice(0);
this.gr2 = this.arr.slice(0);
return this;
}
Это правильный способ сделать это?
Зачем вам это делать? –
В этом случае (массив примитивов) это один жизнеспособный способ – Andreas