Hi Maciej. You are absolutely right! That's why it is so good coupled with TypeScript which can prevent mutating a freezed object by refusing to transpile the file.
Still I see readonly as a tool for the job. Object.freeze is fully run-time thing and it is decoupled from type definition. Declaration of readonly is included into type definition, so it is explicit. I don't think run-time block is needed here.
Hi there, great article! Did you know that you can use
Object.freeze
to prevent mutating an array or an object?It will couse runtime exception. So Object.freeze is not useful in terms of TS.
Hi Maciej. You are absolutely right! That's why it is so good coupled with TypeScript which can prevent mutating a freezed object by refusing to transpile the file.
Still I see
readonly
as a tool for the job.Object.freeze
is fully run-time thing and it is decoupled from type definition. Declaration ofreadonly
is included into type definition, so it is explicit. I don't think run-time block is needed here.Yes, I thought of writing about it but then missed