JavaScript中的const关键字是否创建对不可变数据结构的不可变引用? [我假设JavaScript中存在不可变的数据结构。]
对于string来说似乎是这样的:

var x = "asdf";
const constantX = x;

alert("before mutation: " + constantX);
x = "mutated"
alert("after mutation: " + constantX);
输出:

http://jsfiddle.net/hVJ2a/

最佳答案

是的,它确实创建了一个不可变的引用,但是尚未标准化,并且并非所有浏览器都支持。

有关详细信息和兼容性,请参见此MDN article on the const keyword

但是,将引用的数据结构设置为不可变不会做任何事情。下面的几个答案使用Object.freeze解决了这个问题

09-19 20:53