【发布时间】:2013-03-22 05:54:56
【问题描述】:
以下是正常的javascript语义:
js> a={'a':{'red':12,'green':23,'blue':34}}
({a:{red:12, green:23, blue:34}})
js> b=a['a']
({red:12, green:23, blue:34})
js>b={red:122, green:232, blue:142}
({red:122, green:232, blue:142})
js> a
({a:{red:12, green:23, blue:34})
js>
以下是我想要的语义:
js> a={'a':{'red':12,'green':23,'blue':34}}
({a:{red:12, green:23, blue:34}})
js> b=a['a']
({red:12, green:23, blue:34})
js>b={red:122, green:232, blue:142}
({red:122, green:232, blue:142})
js> a
({red:122, green:232, blue:142})
js>
是否有任何简单的内部技巧可以让 javascript 以我的方式行事?
【问题讨论】:
-
为什么
a应该改变它应该的方式?你是说({a:{red:122, green:232, blue:142}})吗? -
Javascript 没有“指向引用的指针”类型。但是,您可以创建“对象的属性”类型(对象、属性名称)
-
是的,我错过了一些参考能力,以避免更复杂的解决方案
标签: javascript copy semantics