$ .extend不使用带有in对象的数组

时间:2014-05-28 06:00:07

标签: javascript jquery

在jquery中使用扩展对象更改数组时遇到问题。

示例:

var a = {}, b = {j: 2, arr : [{1:1}]};

$.extend(a, b);

console.log("A=" ,a);
console.log("B=" , b);

b.arr.push({2:2});

console.log("A=" , a);
console.log("B=" , b);

链接: http://fiddle.jshell.net/GopsAB/BZu7S/1/

预期: 更改b时不应更改对象a。

1 个答案:

答案 0 :(得分:1)

使用deep选项复制所有子对象而不是共享它们:

$.extend(true, a, b);

FIDDLE