我无法弄清楚为什么我们可以更改DOM元素,即使我们将其声明为常量。如果我们不改变它,那么我们真正在做什么呢? 提前谢谢你。
const button = document.getElementsByTagName('button')[0];
const domElement = document.getElementsByTagName('div')[0];
button.addEventListener('click', e => {domElement.innerText = "how can I be modified even I am const?"});

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>DOM Example</title>
</head>
<body>
<div>change me</div>
<button>Change a DOM element </button>
</body>
</html>
&#13;
答案 0 :(得分:6)
const
仅阻止您更改变量引用指向的对象。它没有阻止你修改对象本身。
这是非法的:
const x = 5;
x = 4; // ERROR
const x = { a: 1 };
x = { b: 2 }; // ERROR
但这很好:
const x = { a: 1 };
x.a = 5;