Hacker News new | ask | show | jobs
by stephenr 1997 days ago
I understand the difference. The problem is that you can completely change the shape of the object that’s “const”, so it’s hardly fucking constant is it.
2 comments

> I understand the difference

No, you clearly don't.

> The problem is that you can completely change the shape of the object that’s “const”

“const” is not a feature of objects, but of the reference to a value (which may or may not be an object).

You can't change the reference at all (unlike a var/let references), hence it is constant.

Object immutability is orthogonal to reference immutability and is attained by Object.freeze().

dragonwriter is right.

In C for ex.

  const int* p
means the value pointed at can't change, but

  int* const p
means you can't reaffect p