我正在試着製作一個複製數組數組的函數。我試過blah.slice(0);但它只複製引用。我需要做一個複製品,保持原來的完整。如何複製或複製數組陣列
我發現這個原型法在http://my.opera.com/GreyWyvern/blog/show.dml/1725165
Object.prototype.clone = function() {
var newObj = (this instanceof Array) ? [] : {};
for (i in this) {
if (i == 'clone') continue;
if (this[i] && typeof this[i] == "object") {
newObj[i] = this[i].clone();
} else newObj[i] = this[i]
} return newObj;
};
它的工作原理,但打亂了我使用jQuery插件 - 所以我需要把它放到一個函數...和遞歸是不是我的最強的。
您的幫助將不勝感激!
乾杯,
一定要申報 「I」 與'var'!使用'for ... in'循環迭代數組也是有風險的 - 使用數字索引更安全。 – Pointy 2012-02-22 17:02:06
請參閱:http://stackoverflow.com/questions/565430/deep-copying-an-array-using-jquery – 2012-02-22 17:04:04