let и const в JavaScript

TLDR: используйте const для назначения переменных в ES6, если переменная не нуждается в переназначении, тогда используйте let.

let и const — это разные способы создания переменных в JavaScript (ES2015, также известный как ES6). В ES5 у нас был только один тип переменной (var), а в ES6 их 3 (var, let, const);

Хотя вы по-прежнему можете использовать var, настоятельно рекомендуется использовать let и const. Они просто меняют что-то за кулисами в отношении области действия переменных.

В ES5 есть только один тип области видимости переменных, и это область видимости функции. В ES5 все переменные, объявленные с помощью var, поднимаются на вершину своей области. Другими словами, когда вы объявляете новую переменную с помощью var, она поднимается в начало функции, в которой вы ее создали, и к ней можно получить доступ из любых вложенных функций. С var, чтобы избежать утечки, вы можете использовать «использовать строгие» и немедленно вызываемые функциональные выражения (IIFE). let не имеет этой проблемы, поскольку вводит заблокированную область.

Некоторые переменные никогда не изменяются, они константы. поэтому вам следует использовать const при создании постоянного значения. Другими словами, для чего-то, что вы назначаете один раз и никогда не меняете.

Хотя переменные, объявленные с помощью const, не являются полностью неизменяемыми, их нельзя переназначить. Рекомендуется всегда использовать const, если переменная не нуждается в переназначении, тогда используйте let. Это потому, что мы хотим свести к минимуму состояние mutable. Кроме того, если вы попытаетесь переназначить постоянную переменную, вы получите сообщение об ошибке, которое даст вам лучшее представление о любой непреднамеренной мутации, происходящей в вашем коде.