【发布时间】:2021-06-04 12:25:38
【问题描述】:
假设“const”是恒定的,我不会想到这是可能的:
const obj = {
key1: value1,
key2: value2
};
obj["key3"] = value3;
obj.key4 = value4;
谁能给我解释一下?
【问题讨论】:
-
A
const"variable" 是一个一旦创建就不能重新分配给另一个值的变量。通过改变对象,变量仍然持有相同的引用,所以变量没有改变。 -
常量和不可变是两个不同的东西。你期望
obj是不可变的 -
为什么我的问题被 4 次否决了?有没有人觉得自己聪明多了?
-
@gear 您的问题用一个很好的例子很好地阐述了,所以这不应该是反对票的原因。您的示例只有一个问题,即变量
value1-value4未定义。将它们更改为字符串可以解决此问题。但反对票的最可能原因可能是缺乏研究。如果您使用任何搜索引擎搜索“JavaScript 为什么我可以更改 const”,您可能会找到答案。我个人认为这个问题不值得投票,但我认为其他人可能不同意。
标签: javascript constants