Tach!
Ich kann nicht sehen, was bei Michael K in der Console steht …
Zumindest mit node kommt keinerlei Ablehnung, Warnung oder Notiz. Es wird einfach nicht getan.
const foo = {};
foo = 42;
Das wäre der Fall, dass foo geändert werden soll. Eine solche Zuweisung wird abgelehnt.
Das Zuweisen von Eigenschaften ist eine andere Geschichte und problemlos möglich, da ja nicht das Objekt konstant ist, sondern nur die Referenz darauf in der Variable foo.
Dein Test, dem String eine Eigenschaft zuzuweisen,
const foo = 'bar';
foo.qux = 42;
wird als Noop klaglos ausgeführt. Es sei denn, der Strict Mode ist aktiviert. Es sei denn, der Prototyp von String hat einen Setter.
Aber auch das hat nichts damit zu tun, dass foo als const deklariert wurde.
dedlfix.