Fork me on GitHub

对Javascript中的对象Object改变内存及其变量改变的图解

Object 存储变量时,变量属性的内存改变图解

左边: 对象的内存   中间:变量属性的内存   右边:属性值的内存

 

【图一】创建一个对象,存obj1 变量--里面存age 属性和属性值--12。

 

let obj1 = new Object();

obj1.age = 12;

 

object1.png

 

【图二】 (改变的是对象的内存)同上,但把obj1的内存给了obj2,在同一对象内存中,obj2改变了属性值--age = 22,所以obj1与obj2 指向同一属性内存地址。

 

let obj1 = new Object();

obj1.name = 12;

let obj2 = obj1;

obj2.age = 22;

object2.png

 

【图三】 (改变的是变量的内存)同图二,但这次,obj2新创建了Object内存,不会影响obj1的对象内存,所以其age的内存和值不会改变。

 

let obj1 = new Object();

obj1.age = 12;

let obj2 = new Object();

obj2.age = 22;

object3.png

 

posted @ 2021-04-14 20:30  ༺Tu༒aimes༻  阅读(180)  评论(0编辑  收藏  举报