var foo = 123;
function test() {
var foo = 456;
}
test();
console.log(foo); // 123
if (true) {
let foo = 123;
}
// 下記のようになります //
if (true) {
var foo = 123;
}
var foo = '123';
if (true) {
let foo = 123;
}
// 下記のようになります //
var foo = '123';
if (true) {
var _foo = 123; // リネームされています
}
switch (name) {
case 'x': {
let x = 5;
// ...
break;
}
case 'y': {
let x = 10;
// ...
break;
}
}
var funcs = [];
// たくさんの関数を作成する
for (var i = 0; i < 3; i++) {
funcs.push(function() {
console.log(i);
})
}
// それらを呼び出す
for (var j = 0; j < 3; j++) {
funcs[j]();
}
var funcs = [];
// たくさんの関数を作成する
for (var i = 0; i < 3; i++) {
(function() {
var local = i;
funcs.push(function() {
console.log(local);
})
})();
}
// それらを呼び出す
for (var j = 0; j < 3; j++) {
funcs[j]();
}
var funcs = [];
// たくさんの関数を作成する
for (let i = 0; i < 3; i++) { // Note the use of let
funcs.push(function() {
console.log(i);
})
}
// それらを呼び出す
for (var j = 0; j < 3; j++) {
funcs[j]();
}