【发布时间】:2012-01-30 18:51:07
【问题描述】:
即使作为一个经验丰富的 JS 开发人员,我也经常对对象的浅拷贝和深拷贝感到惊讶。
对于通过引用而不是主要对象类型的值复制 JavaScript 值时,是否有任何经验法则?例如,我知道字符串值总是通过值而不是引用来复制。
【问题讨论】:
-
取决于您的复制方法。你必须具体——你如何复制你的价值观?
-
或者你的意思是当一个值作为参数传递给一个函数的情况?
-
我想的是一种简单的
var x, y; x = { 'blah': 'foo' }; y = x; x = { 'bar': 'bas' }; console.log( y );类型的情况,而不是通过参数传递,但如果复制类型有更多细微差别,请告诉我如何改进问题。跨度> -
学究式帽子:JavaScript 严格按值传递。
-
@lwburk 好吧,但是当您没有意识到 JavaScript 中有多少 值 本身就是引用时,就会感到困惑。
标签: javascript