Object.freeze()
seems like a transitional convenience method to move towards using const
in ES6.
Are there cases where both take their place in the code or is there a preferred way to work with immutable data?
Should I use Object.freeze()
until the moment all browsers I work with support const
then switch to using const
instead?
const
and Object.freeze
are two completely different things.
const
applies to bindings ("variables"). It creates an immutable binding, i.e. you cannot assign a new value to the binding.
Object.freeze
works on values, and more specifically, object values. It makes an object immutable, i.e. you cannot change its properties.