JSFiddle - React, Tailwind, and code Playground

by Nenad Novakovic

JavaScript

var myArray = [2, 4, 6, 8, 10];

for (var i = 0; i < myArray.length; i++) {
	// Outputs: 0 - 4
//	console.log(i);
}

for (var i = 0; i < myArray.length; i++) {
	// Outputs: 5 (5x)
//	setTimeout(function () {
//		console.log(i);
//  }, 3000);
}

for (let i = 0; i < myArray.length; i++) {
  // Outputs: 0 - 4
//	setTimeout(() => console.log(i), 3000);
}

for (var i = 0; i < myArray.length; i++) {
	setTimeout(function (myInc) { 
  	return () => console.log(myInc);
  }(i), 3000)
}