В чём различия между `var`, `let` и `const` в JavaScript?
var: область видимости функциональнаяletиconst: область видимости блочнаяvar: можно переобъявлять в одной области видимостиvar:hoistingletиconst:TDZvarиlet: можно объявить без инициализацииvarиlet: значения изменяемы (mutable)const: ссылка неизменяема (immutable), но содержимое объектов и массивов может изменяться (mutable)