|
|
|
|
|
by Mateon1
3177 days ago
|
|
`let` is block scoped, while `var` is function scoped. Essentially: function do_something() {
if (true) {
var x = 42;
let y = 42;
}
console.log(x); // 42
console.log(y); // Reference error: y is not defined
}
It's extremely useful in for loops: for (var i = 0; i < 5; i++) {
setTimeout(function () { console.log(i); }); // => 5, 5, 5, 5, 5
}
for (let i = 0; i < 5; i++) {
setTimeout(function () { console.log(i); }); // => 0, 1, 2, 3, 4
}
|
|