Heim >Web-Frontend >js-Tutorial >So verwenden Sie die for-Schleife var und lassen jQuery ein
Dieses Mal zeige ich Ihnen, wie Sie die for-Schleife var und let in jQuery verwenden und welche Vorsichtsmaßnahmen für die Verwendung der for-Schleife var und let in jQuery gelten. Das Folgende ist ein praktischer Fall, schauen wir uns das an.
Beim Senden einer Anfrage mit AJAX wurde eine weitere AJAX-Anfrage verschachtelt. Es wurde festgestellt, dass die Schleifenvariable i in der ersten erfolgreichen Anfrage nicht abgerufen werden konnte. Der spezifische Code lautet wie folgt:
$.ajax({ type: "get", url: "//////////////////////////", success: function (result) { rs = JSON.parse(result).data; for (var i = 0; i < rs.length; i++) { //用var定义有问题 var pos_ = "" $.ajax({ type: 'GET', async: false, dataType: 'jsonp', contentType: 'application/json; charset=utf-8', url: "///////////////////////////////////", success: function (result) { console.log(rs[i]) //报错 } }) } } })
In der Callback-Funktion nach der zweiten Ajax-Anfrage meldet rs[i] einen Fehler.
Lösung:
Ändern Sie die in der for-Schleife deklarierte Variable var i in let i
Spezifischer Grund:
Es befindet sich in der for-Schleife nach der ersten Callback-Funktion. Wenn Sie eine Anfrage erneut senden, wird die for-Schleife nicht gestoppt, auch wenn Sie eine synchrone Anfrage schreiben.
Wenn Sie jedoch let nach der Deklaration der for-Schleifenvariablen verwenden, startet der Code die nächste Schleife erst, wenn Ihre Anfrage abgeschlossen und die Rückruffunktion ausgeführt ist.
Dies berücksichtigt ein Abschlussproblem, wenn Sie var- und let-Deklarationen in unterschiedlichen Gültigkeitsbereichen schreiben.
Let i wird als lokale Variable übergeben
var i wird als globale Variable übergeben
Wenn Sie die i-Variable an die nächste Ebene übergeben möchten, verwenden Sie erklären lassen.
Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!
Empfohlene Lektüre:
So verwenden Sie das Bildanzeige-Plug-in highslide.js in jQuery
So verwenden Angularjs benutzerdefinierte Anweisungen
Das obige ist der detaillierte Inhalt vonSo verwenden Sie die for-Schleife var und lassen jQuery ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!