如何正确克隆JavaScript对象?

如何正确克隆JavaScript对象?

我有一个对象,x。我想把它复制为对象y,这样改变y就不要修改了x。我意识到复制从内置JavaScript对象派生的对象将导致额外的,不需要的属性。这不是问题,因为我正在复制我自己的一个文字构造的对象。

如何正确克隆JavaScript对象?


阿晨1998
浏览 536回答 4
4回答

缥缈止盈

如果您不在对象中使用函数,则可以使用以下非常简单的衬垫:var cloneOfA = JSON.parse(JSON.stringify(a));这适用于包含对象,数组,字符串,布尔值和数字的所有类型的对象。另请参阅本文关于在向工作人员发送消息和从工作人员发布消息时使用的浏览器的结构化克隆算法。它还包含深度克隆功能。

慕妹3242003

使用jQuery,您可以使用extend进行浅层复制:var copiedObject = jQuery.extend({}, originalObject)对copiedObject的后续更改不会影响originalObject,反之亦然。或者进行深层复制:var copiedObject = jQuery.extend(true, {}, originalObject)
打开App,查看更多内容
随时随地看视频慕课网APP