Web前端必做笔记之一:对象拷贝(一) js内存结构
<script>
//js内存结构
//js的原始类型和引用类型
let a = 10;
let b = a;
a = 20;
console.log(a) // 20 这时a = 20;改变了a
console.log(b) //10
//因为这时的a,b是数值,也就是原始类型
//原始类型: 数值,字符串,布尔,null,undefined
let a = {name:"小明"};
let b = a;
a.name = '小红';
console.log(a.name); //小红
console.log(b.name); //小红
//为啥都是小红,因为这时,a,b是对象,是引用类型, 对象存储在堆内存中
//a指向了这个对象,这个对象把名字改成‘小红’,所以输出a,b都是小红
//引用类型: 对象
</script>
本文介绍了JavaScript中的内存结构,包括原始类型和引用类型的区别。通过示例展示了数值型变量和对象型变量在赋值时的不同行为。原始类型如数值、字符串等在赋值时为值传递,而对象作为引用类型,赋值时传递的是引用。因此,当修改对象属性时,所有引用该对象的变量都会受到影响。文章深入探讨了JavaScript中的浅拷贝和深拷贝概念,对于理解JavaScript内存管理和对象操作具有重要意义。
1350

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



