Какая разница между переменными объявленными через let и var в javascript? Какой вариант объявления переменной лучше использовать?
переменная созданная с использованием let будет доступна только в блоке где она была объявленна, например:
function MyFunc()
{
// какой-то код
for(let i = 0; i < 10; i++)
{
// какой-то код
}
// какой-то код
}
переменная i в таком случае будет доступна только в цикле, а если бы она создавалась с помощью var, тогда она была бы видна и вне цикла (как до, так и после).
Как мне сказали: "Используй то, что более удобно лично для тебя и вообще let переменные придумали для программистов, которые переходят из таких языков как Java или C# на JS, поскольку в тех языках все переменные являются блочными (они видны только в тех блоках, где были созданы) и использование var переменных меняет эту логику". От себя хочу добавить, что если переменная нужна лишь на определённом участке кода, тогда создайте её используя let, иначе var
а если я в функции напишу следующее:
function MyFunc()
{
a = 20;
console.log(a)
// какой-то код
}
какой переменной будет a? код работает
в таком случае у Вас переменная a
будет объявлена как var переменная за пределами функции