JavaScript'te dinamik olarak oluşturulmuş bir "a" etiketinin onclick olayına bir işlev atamaya çalışıyorum.Bir döngüdeki (başka bir işlevi döndüren) işlev nasıl çalışır?
for (var i = 0; i < 4; i++)
{
var a = document.createElement("a");
a.onclick = function() { alert(i) };
document.getElementById("foo").appendChild(a);
}
dört bağlantılar için uyarı değeri her zaman "4" dir: şöyle etiketlerin tamamı bir döngü oluşturulur. Gayet açık. Googling zaman aşağıdaki kod parçacığını gösteren bir yazı geldi:
a.onclick = (function(p, d) {
return function(){ show_photo(p, d) }
})(path, description);
benim ihtiyaçları için çimdik başardı ve uyarı (i) şey düzgün çalışması için var ama birisi tam olarak açıklayabilir misin diye takdir edersiniz Yukarıdaki kod ne yapar.
Hi:
Ben kapanışları (ve curry bir çok temel kavram) açıklamak için aşağıdaki parçacığını kullanın, ben basit bir örnek kavramını almak için daha kolay hale getirebilir düşünüyorum Uyarılar "4"? "2" olmasın mı? Teşekkürler. – Tarik
için (var i = 0; i <3; i ++) i == 4 sonunda –
Hayır, 3 olarak kalıyor. –