Да это не критика терминологии была)) В описке "ну, почти" вы сами ответили на свой вопрос
В
учебнике написано:
Содержимое строки в JavaScript нельзя изменять. Нельзя взять символ посередине и заменить его. Как только строка создана – она такая навсегда.
Можно лишь создать целиком новую строку и присвоить в переменную вместо старой, например:
ни с const, ни с var, ни с let вы не сможете изменить именно таким способом символ в строке. Но в строках, хранимых в var и let, можно юзать replace для этой цели. Зачем вам const там, где будут изменения?)
P.S. -
Я знаю, что const \ let неизменяемые, но можно изменить свойство.
let очень даже изменяемые )