Das Beispiel dieses Artikels analysiert den Unterschied zwischen der for in-Schleife in js und der foreach-Schleife in Java. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:
Die for in-Schleife in js ist wie folgt definiert:
for(var variable in obj) { ... }
obj kann ein gewöhnliches js-Objekt oder ein Array sein. Wenn obj ein js-Objekt ist, ist die beim Durchlaufen erhaltene Variable der Name des Objektattributs und nicht der dem Attribut entsprechende Wert. Wenn obj ein Array ist, ist die beim Durchlaufen erhaltene Variable der Index des Arrays.
Objektexperiment durchqueren:
var v = {}; v.field1 = "a"; v.field2 = "b"; for(var v in v) { console.log(v); }
Konsolenausgabe:
Feld1
Feld2
Array-Durchquerung Experiment:
var mycars = new Array() mycars[0] = "Saab" mycars[1] = "Volvo" mycars[2] = "BMW" for (var x in mycars){ console.log(x); }
Konsolenausgabe:
0
1
2
Nehmen Sie zum Vergleich die Java-Foreach-Schleife gibt es zwei wesentliche Unterschiede. Erstens listet die foreach-Schleife von Java die Eigenschaften eines Java-Objekts nicht auf. Zweitens: Wenn die foreach-Schleife von Java ein Array oder ein beliebiges Objekt aufzählt, das die Iterable-Schnittstelle implementiert, ruft Objekt o für (Objekt o: Liste) ein Element der Liste ab, nicht den Index in der Liste.
Der Java-Traversal-Code wird nicht veröffentlicht. Ich schreibe oft Hintergrundcode und die foreach-Schleife kommt mir sehr bekannt vor. Beim Schreiben von Front-End-JS-Code ist es unvermeidlich, die Java-Syntax anzuwenden, daher habe ich bei der ersten Verwendung der JS-for-in-Schleife einen Fehler gemacht. Wenn Sie es dieses Mal klar zusammenfassen, werden Sie in Zukunft keine Fehler mehr machen.
Ich hoffe, dass dieser Artikel für das JavaScript-Programmierdesign aller hilfreich sein wird.
Weitere verwandte Artikel zur Differenzanalyse zwischen der for in-Schleife in js und der foreach-Schleife in Java finden Sie auf der chinesischen PHP-Website!