鍍金池/ 問答/HTML/ javascript多維數(shù)組值復制疑問?

javascript多維數(shù)組值復制疑問?

js數(shù)組賦值給另外一個數(shù)組變量是引用賦值,要實現(xiàn)值傳遞可以使用循環(huán)賦值、concat、slice。但是多維數(shù)組賦值,只有循環(huán)賦值靠譜,slice和concat都不靠譜了,哪個大神能否給個詳細的解釋,小弟感激不已。
var a = [1,2,3];
var b = a;
a.pop();
console.log(b);  //1,2
/*=====================*/
var a = [[1,2],[2]];
var b = a.concat();
a[0][1] = 22;
console.log(b);  //[[1,22],[2]]
//這種復制方法很靠譜
Object.prototype.clone = function() {
    var o = this.constructor === Array ? [] : {};
    for (var e in this) {
        o[e] = typeof this[e] === "object" ? this[e].clone() : this[e];
    }
    return o;
};
回答
編輯回答
柚稚

你需要深拷貝

2018年1月6日 17:55
編輯回答
尐懶貓

能看一下你的concat、slice相關代碼嗎?

2017年4月24日 11:03