sergei2210
@sergei2210
Кратко о себе

Почему пишут const когда можно написать let?

Я иногда вижу что пишут const (значение этой переменной я знаю) хотя можно просто написать let
Это что просто особенность "подчерка"

Это как тоже самое что я вижу верстке пишут id (про уникальность и приоритетность знаю) когда можно и написать просто class, и мне кажется это просто так человек пишет.
  • Вопрос задан
  • 421 просмотр
Решения вопроса 4
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Ответ прост:
const => ReadOnly на переменную.
let => ReadWrite на переменную.

Причины для защиты переменной от изменения могут быть абсолютно любыми.

1. Как наиболее частое употребление защиты: многократное использование значения константной переменной в разных блоках кода.

2. Иногда, используют как хранилище, используя объект внутри константы.
Важно помнить: объект внутри константы МОЖНО изменять, но нельзя менять ссылку на него (значение самой константы).

Ну и отрывок из доки:
const создаёт константу (новую именованную ссылку на область памяти), доступную только для чтения. Это не означает, что указываемое значение неизменно, но это означает, что идентификатор не может быть переназначен. Например, если константа указывает на объект, то сам объект может быть изменён.
Ответ написан
Комментировать
@abberati
frontend-разработчик
Ваш вопрос должен звучать иначе: «почему некоторые пишут let там, где можно обойтись const?»

Чем меньше свободы в коде, тем проще этот код поддерживать. Если переменная не изменяется намеренно, то она должна быть константой. Если я вижу let, то сразу же возникает вопрос: «почему не const? Значение где-то меняется? А где? И почему?». Если я вижу const, то я уверен — в этой переменной всегда лежит именно то, что в неё положили при инициализации и нет смысла искать, «меняется она или нет».
Ответ написан
Комментировать
@raury
const используется для того, чтобы другой разработчик случайно не изменил значение переменной. Если ты пишешь для себя и прекрасно держишь все в голове, то пиши свой код хоть в одну строку сразу минифицированным). Это становится максимально понятно при разработке крупных проектов. Тоже самое могу сказать, например, про ООП.
Ответ написан
@Darhild
Существует такой подход. Обусловленный разными причинами, про которые, как писали выше, можно почитать в статьях - и, не в последнюю очередь, мне кажется, личными предпочтениями и привычками разработчика. Нас, к примеру, в свое время учили на курсах по javascript: ставьте const по умолчанию всегда, потом, если понадобится изменить значение переменной, измените на let. Есть ли действительно значительная разница в производительности, у меня так и не дошли руки разобраться, но привычка осталась - почему бы нет?
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
Потому что eslint заставляет, lol.)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы