【发布时间】:2013-04-10 10:58:21
【问题描述】:
如何在 JavaScript 中创建一个只读/不可变版本的对象,其属性不能更改?这也应该适用于任何子对象的属性等等。
我遇到的所有执行此操作的方法(Object.defineProperty、Object.freeze 等)仅适用于对象的顶级属性,但不适用于子对象。
(一个可能的用例:在特定模块中创建/修改settings 或configuration 类型对象后,您需要以不可变的形式将其公开给程序的其余模块。)
【问题讨论】:
标签: javascript object constants immutability readonly