Day19简单和引用数据类型


<!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 = 10
let num2 = num1
num2 = 20
console.log(num1)//输出10 没有改变num1在栈里的值
let obj = {
age: 18
}
let obj2 = obj
//修改属性
obj2.age = 20
console.log(obj.age)
//反直觉的是,此处输出的为20而非18,明明从始至终都为对obj的age属性做过修改
//但let obj2 = obj这个代码并不是将obj中的age = 10给obj2
// 这里给的实际是obj在栈中的地址,导致对obj2的修改会关联到地址对应的堆中的数据
</script>
</body>
</html>


浙公网安备 33010602011771号