Closure IN LOOP
js closure
by bhupendra negi
JavaScript
var arr = [];
function generateFN() {
for (var i = 0; i < 3; i++) {
arr.push(function() {
console.log(i)
});
}
return arr;
}
var fn = generateFN();
fn[0]();
fn[1]();
// -------------ES-6 closure ---------------//
console.log("es6 closure")
var arr = [];
function generateFN() {
for (let i = 0; i < 3; i++) {
arr.push(function() {
console.log(i)
});
}
return arr;
}
var fn = generateFN();
fn[0]();
fn[1]();
//-----------ES 5 FIX --------------------//
console.log("es5 FIX")
var arr = [];
function generateFN() {
for (var i = 0; i < 3; i++) {
arr.push(
(function(j) {
return function() {
console.log(j)
}
})(i))
}
return arr;
}
var fn = generateFN();
fn[0]();
fn[1]();