up:: JavaScript and TypeScript
source:: letとvarの違い - Qiita
let(ES6から)はブロックレベル、varは関数レベルで動作する。
function f() {
let x \= 1;
console.log(x);
{
let x \= 2;
console.log(x);
}
console.log(x);
}
f()
// 1
// 2
// 1
function f() {
var x \= 1;
console.log(x);
{
var x \= 2;
console.log(x);
}
console.log(x);
}
f()
// 1
// 2
// 2