

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>数据类型储存</title>
</head><body><script>let num1 = 10let num2 = num1num2 = 20console.log(num1)//输出10 没有改变num1在栈里的值let obj = {age: 18}let obj2 = obj//修改属性obj2.age = 20console.log(obj.age)//反直觉的是,此处输出的为20而非18,明明从始至终都为对obj的age属性做过修改//但let obj2 = obj这个代码并不是将obj中的age = 10给obj2// 这里给的实际是obj在栈中的地址,导致对obj2的修改会关联到地址对应的堆中的数据</script>
</body></html>
