Dieses Mal werde ich Ihnen eine Zusammenfassung aller Schleifendurchquerungsmethoden in JS geben. Was sind die Vorsichtsmaßnahmen für die Zusammenfassung der Schleifendurchquerung in JS?
1. for-Schleife
let arr = [1,2,3]; for (let i=0; i<arr.length; i++){ console.log(i,arr[i]) } // 0 1 // 1 2 // 2 3
Die for-Schleife ist das am häufigsten verwendete Schleifenwerkzeug in JS und wird häufig zum Schleifendurchlauf von Arrays verwendet .
2. for in-Schleife
let obj = {name:'zhou',age:'**'} for(let i in obj){ console.log(i,obj[i]) } // name zhou // age **
Die for in-Schleife wird hauptsächlich zum Durchlaufen gewöhnlicher Objekte verwendet, i repräsentiert den Schlüsselwert des Objekts , obj[i] stellt den entsprechenden Wert dar. Wenn Sie es zum Durchlaufen des Arrays verwenden, kann in den meisten Fällen derselbe Effekt erzielt werden, dies ist jedoch nicht riskant, da i ausgegeben wird Anstelle des für das Array erforderlichen numerischen Index bedeutet dies, dass in einigen Fällen Zeichenfolgenoperationen auftreten, die zu Datenfehlern führen, z. B.: „52“+1 = „521“ anstelle der von uns benötigten 53.
Wenn die for-in-Schleife außerdem nicht nur ihre eigenen Eigenschaften durchläuft, findet sie auch den Prototyp. Daher ist es am besten, dem Schleifenkörper eine Beurteilung hinzuzufügen. Verwenden Sie einfach obj[i].hasOwnProperty( i), um zu vermeiden, dass zu viele unnötige Attribute durchlaufen werden.
3. while-Schleife
Durchlaufen Sie auf ähnliche Weise das Cars-Array, verwenden Sie zuerst die for-Schleifenmethode
let cars=["BMW","Volvo","Saab","Ford"]; let i=0; for (;cars[i];) { console.log(cars[i]) i++; }; // BMW // Volvo // Saab // Ford
und dann die while-Schleifenmethode
cars=["BMW","Volvo","Saab","Ford"]; var i=0; while (cars[i]) { console.log(cars[i] + "<br>") i++; };
Wir haben festgestellt, dass sie den gleichen Effekt erzielen können. Tatsächlich ist ihre zugrunde liegende Verarbeitung dieselbe, aber die for-Schleife kann die Definition bedingte Beurteilung und die automatische Inkrementierung festlegen und Dekrementierungsoperationen lassen den Code praktischer aussehen, das ist alles.
4. do while-Schleife
let i = 3; do{ console.log(i) i--; } while(i>0) // 3 // 2 // 1
Die do while-Schleife ist eine Variante der while-Schleife, die zunächst eine Operation ausführt und dann fortfährt Wenn die Bedingung wahr ist, wird die Operation fortgesetzt. Wenn sie falsch ist, wird die Schleife beendet.
5. Array forEach-Schleife
let arr = [1,2,3]; arr.forEach(function(i,index){ console.log(i,index) }) // 1 0 // 2 1 // 3 2
forEach-Schleife durchläuft jedes Element im Array und führt Operationen aus, es gibt keinen Rückgabewert. Sie müssen die Länge des Arrays nicht kennen, es hat drei Parameter, nur der erste ist erforderlich, der den Wert unter dem aktuellen Index darstellt.
Bitte beachten Sie auch, dass die forEach-Schleife nicht gestoppt werden kann, bevor alle Elemente aufgerufen wurden. Sie verfügt nicht über eine break-Anweisung. Wenn Sie stoppen müssen, können Sie eine try-catch-Anweisung verwenden, die beim Aufrufen ausgegeben wird Sie möchten einen Exit erzwingen. Ein Fehler wird von Catch erfasst und dann in Catch zurückgegeben, damit die Schleife beendet werden kann. Wenn Sie diese Methode häufig verwenden, ist es am besten, eine solche forEach-Funktion in Ihrer Bibliothek anzupassen.
6. Array-map()-Methode
let arr = [1,2,3]; let tt = arr.map(function(i){ console.log(i) return i*2; }) // [2,4,6]
map()-Methode gibt ein neues Array zurück und die Elemente im Array werden aufgerufen die ursprünglichen Array-Elemente. Der Wert nach der Funktionsverarbeitung.
Hinweis: Die Methoden „map“ und „forEach“ können nur zum Durchlaufen von Arrays verwendet werden, nicht für gewöhnliche Objekte.
7. Array-Filter()-Methode
let arr = [1,2,3]; let tt = arr.filter(function(i){ return i>1; }) // [2,3]
Filter-Methode ist eine integrierte Methode des Array-Objekts. Sie gibt die gefilterten Elemente zurück ohne das ursprüngliche Array zu ändern.
8. Array-some()-Methode
let arr = [1,2,3]; let tt = arr.some(function(i){ return i>1; }) // true
some()-Methode wird verwendet, um zu erkennen, ob die Elemente im Array die angegebenen Bedingungen erfüllen (die Funktion stellt bereit) gibt einen booleschen Wert zurück, ohne das ursprüngliche Array zu ändern.
9. Array-Every()-Methode
let arr = [1,2,3]; let tt = arr.some(function(i){ return i>1; }) // 检测数组中元素是否都大于1 // false
Every()-Methode wird verwendet, um zu erkennen, ob alle Elemente des Arrays die angegebenen Bedingungen erfüllen (über die bereitgestellte Funktion), gibt einen booleschen Wert zurück und ändert das ursprüngliche Array nicht.
10. Array-reduce()-Methode
let arr = [1,2,3]; let ad = arr.reduce(function(i,j){ return i+j; }) // 6
reduce()-Methode empfängt eine Funktion als Akkumulator, jeder Wert im Array ( von von links nach rechts) und schließlich zu einem einzigen Wert berechnet.
11. Array-reduceRight()-Methode
let arr = [1,2,3]; let ad = arr.reduceRight(function(i,j){ return i+j; }) // 6
reduceRight()-Methode, die Funktion ist dieselbe wie Reduce(), sie stammt von Das Array beginnt mit dem Vorwärtszählen ab dem Ende von .
12. for of-Schleife
let arr = ['name','age']; for(let i of arr){ console.log(i) } // name // age
for of 循环是 Es6 中新增的语句,用来替代 for in 和 forEach,它允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代(Iterable data)的数据结构,注意它的兼容性。
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
Das obige ist der detaillierte Inhalt vonZusammenfassung aller Schleifendurchlaufmethoden in JS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!