javascript的赋值(区分引用与值)
参考:http://www.xiaoxiaozi.com/2009/05/22/588/
? ? ? ? ?http://bornlone.iteye.com/blog/386909
JavaScript值类型和引用类型有哪些?
(1)值类型:数值、布尔值、null、undefined。?
(2)引用类型:对象、数组、函数。
字符串比较特殊
var oraginalObj = {a : 123,b : {value : 456}};var targetObj = {a : oraginalObj.a,b : oraginalObj.b};console.dir(targetObj);/** * 改变oraginalObj的值不会改变targetObj中a的值,说明对于基本类型赋值操作是copy一分新的值给targetObj.a, * 而不是targetObj.a指向oraginalObj.a * * 而对于对象:targetObj.b是直接指向oraginalObj.b的,修改oraginalObj.b.value会改变targetObj.b.value */oraginalObj.a = 111;console.log(oraginalObj.a==targetObj.a)oraginalObj.b.value = 222;console.dir(targetObj);console.log(oraginalObj.b==targetObj.b);