参考: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);
本文详细解析了JavaScript中的值类型(数值、布尔值、null、undefined)和引用类型(对象、数组、函数),并通过实例展示了字符串的特殊性及基本类型与引用类型的赋值差异。进一步探讨了对象属性的传递机制。
1286

被折叠的 条评论
为什么被折叠?



