javascript中的重复对象

栏目: JavaScript · 发布时间: 6年前

内容简介:第一个不创建副本,而只是复制引用,因此a和b指向操作后的同一个对象.但是,在第二种情况下,每个属性都是单独复制的,因此在a中创建了对象的“真实”副本(只要属性中只有原始类型,否则你会在更深层次上遇到同样的问题).所以在第一种情况下,如果你改变b.c然后a.c也会改变,而在第二种情况下它不会改变.

我看到两种复制对象的方法

1.

var a={c:1}
var b=a;
alert(b.c);//alert 1

2.

var a={c:2};
var b={};
for (i in a)
{b[i]=a[i];} 
alert(b.c);//alert 1

第一个比第二个短,那么第二个例子的效率是多少?

第一个不创建副本,而只是复制引用,因此a和b指向操作后的同一个对象.

但是,在第二种情况下,每个属性都是单独复制的,因此在a中创建了对象的“真实”副本(只要属性中只有原始类型,否则你会在更深层次上遇到同样的问题).

所以在第一种情况下,如果你改变b.c然后a.c也会改变,而在第二种情况下它不会改变.

翻译自:https://stackoverflow.com/questions/13287297/duplicate-object-in-javascript


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

精通HTML

精通HTML

Paul Haine / 杨明军 / 人民邮电出版社 / 2008-2 / 35.00元

本书深入地探讨了(X)HTML及相关技术包括CSS、微格式、语义网等,重点阐述了如何在恰当的时候使用恰当的标签,全书始终贯彻现代的Web设计理念,从而使读者可以学习如何充分利用各种标记提供的多样性,创建语义丰富和结构合理的网站。 本书适合具备初步HTML和CSS知识的Web设计开发人员阅读。一起来看看 《精通HTML》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具