//Loop scope closure example for programadorobjetivo.co function externa() { var list = document.getElementById("list"); for (var i = 1; i <= 5; i++) { var item = document.createElement("button"); item.appendChild(document.createTextNode("Click me " + i)); //--------Outra Alternativa------------ // (function(valor) { // var j = valor; // item.onclick = function interna (event) { // alert("Item " + j + " is clicked."); // }; // })(i); function setClickEvent(valor){ item.onclick = function interna (event) { alert("Item " + valor + " is clicked."); }; }; setClickEvent(i); list.appendChild(item); } }; externa();