JavaScript在for循环中绑定事件解决事件参数不同的情况_javascript技巧
有时候要对响应一堆相似的事件,但是每个事件的参数都不同,一开始还以为挺简单的,用个for循环不就得了,结果发现,额,都是使用了最后一个参数。。。
上网查资料!!!结果大神说用闭包解决
代码:
for(var i=0;ibtns[i].onclick=(function(i){
return function(){alert(i)}
})(i)
}
大概原因是直接用btns[i].onclick=function(){alert(i)}时,JavaScript引擎会先将for循环里的代码执行完,
当用户出发onclick事件时,JavaScript会寻找i,结果会找到运算完成之后的i,也就是10
但是用闭包处理的话,i会成为函数的局部变量

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Implementierungsschritte: 1. Verwenden Sie den Steuerbereich der for-Anweisung, um die Zahlen von 1 bis 100 zu durchlaufen. Die Syntax lautet „for ($i = 1; $i <= 100; $i++) {loop body code}“; Verwenden Sie einfach die if-Anweisung und den „%“-Operator, um ungerade Zahlen zu erhalten und auszugeben. Die Syntax lautet „if($i % 2 != 0){echo $i.“

Ausführungssequenz: 1. Führen Sie den „Initialisierungsausdruck“ aus. 2. Führen Sie den „Bedingungsausdruck“ aus. Andernfalls beenden Sie die Schleife Körper, führen Sie „Variablenaktualisierungsausdruck“ aus. 4. Geben Sie nach der Aktualisierung der Variablen die nächste Schleife ein, bis der Bedingungsbeurteilungswert falsch ist, und beenden Sie die Schleife.

Im vorherigen Artikel „JS-Schleifenlernen: Die Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)“ haben wir kurz etwas über die while-Schleife und die do-while-Schleife gelernt, und heute werden wir eine andere Art von Schleife vorstellen – die for-Schleifenanweisung I Ich hoffe, es wird allen nützlich sein!

So verwenden Sie die for-Schleife in Python Python ist eine einfache und benutzerfreundliche Programmiersprache und die for-Schleife ist eines der am häufigsten verwendeten Werkzeuge. Durch die Verwendung von for-Schleifen können wir eine Reihe von Daten durchlaufen, effektive Verarbeitungen und Operationen durchführen und die Effizienz des Codes verbessern. Im Folgenden werde ich anhand spezifischer Codebeispiele die Verwendung der for-Schleife in Python vorstellen. Grundlegende for-Schleifensyntax In Python lautet die Syntax einer for-Schleife wie folgt: für Variable in iterierbarem Objekt:

MySQL verfügt nicht über eine for-Schleife. MySQL unterstützt nur drei Schleifenanweisungen: WHILE, REPEAT und LOOP, sodass Sie einen SQL-Codeblock wiederholt auf der Grundlage von Bedingungen ausführen können.

Ein Array ist eine Gruppe zusammengehöriger Datenelemente, die unter einem einzigen Namen gespeichert sind. Zum Beispiel ist intStudent[30];//student ein Array-Name, eine Sammlung von 30 Datenelementen, die einen einzelnen Variablennamen enthalten. Operative Suche des Arrays – wird verwendet, um herauszufinden, ob ein bestimmtes Element vorhanden ist. Sortierung – hilft, die Elemente im Array anzuordnen in aufsteigender Reihenfolge oder in absteigender Reihenfolge sortieren. Traversal – Es verarbeitet jedes Element im Array nacheinander. Einfügen – Es hilft, Elemente in ein Array einzufügen. Löschen – Hilft beim Löschen von Elementen aus einem Array. Elemente im Array. Die Logik zum Finden gerader Zahlen in einem Array ist wie folgt: for(i=0;i<size;i++){ if(a[i]%2==0){

Die Verwendung einer Python-For-Schleife besteht darin, ein iterierbares Objekt, andere Arten iterierbarer Objekte, verschachtelte Schleifen und Schleifenkontrollanweisungen zu durchlaufen. Detaillierte Einführung: 1. Durchlaufen Sie ein iterierbares Objekt, um den Namen des aktuellen Elements in jeder Iteration zu speichern Die Variable char speichert nacheinander jedes Zeichen in der Zeichenfolgennachricht und druckt es über die Druckfunktion usw. aus.

Die Logik zum Drucken eines Monatskalenders lautet wie folgt: − for(i=1;i<first;i++) printf("");for(i=1;i<=noofdays;i++){ printf("%3d",i); if((first+i-1)%7==0) &nb
