基本数据类型,存放在栈空间中。对象数据类型,存放在堆内存中。
var a = 1; 栈内存: 变量名 数据值
var obj = new Object(); 栈内存: obj 地址值 堆内存: 开辟一个空间存放对象数据
var obj1 = obj; 将obj的地址值赋给obj1
<script>
//变量
var a = 123;
var b = a;
a = 124;
console.log(b); //依旧是123
//基本数据类型保存在栈空间中
//对象保存在堆内存中
var obj = new Object();
obj.age = 22;
var obj1 = obj;
console.log(obj1); //Object
obj.age = 23;
console.log(obj1.age); //输出为23
</script>
所以如果更改obj中属性的值,那么必然也将会影响到obj1
本文深入探讨了基本数据类型与对象数据类型的存储位置,即栈空间与堆内存的区别。通过示例说明了变量赋值时,基本数据类型直接复制值,而对象数据类型则传递引用,导致对对象的修改会影响所有指向该对象的变量。
2134

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



