Heim  >  Artikel  >  Web-Frontend  >  Was sind die neuen Traversal-Methoden in es6?

Was sind die neuen Traversal-Methoden in es6?

青灯夜游
青灯夜游Original
2022-03-23 16:38:232115Durchsuche

Die neuen Traversal-Methoden sind: 1. findIndex(), die das Array durchlaufen und passende Elemente finden kann; 2. find(), die das Array durchlaufen und das erste passende Element finden kann; matchkeys Wertepaare durchlaufen; 4.keys(), Schlüsselnamen durchlaufen; 5.values(), Schlüsselwerte durchlaufen.

Was sind die neuen Traversal-Methoden in es6?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript Version 6, Dell G3-Computer.

10 häufig verwendete Traversal-Methoden in ES5:

1. Ursprüngliche for-Schleifenanweisung

2. Integrierte Methode für Array-Objekte Array.prototype.map

4. Integrierte Methode für Array.prototype.filter

5. Integrierte Methode für Array.prototype.reduce

6. Integrierte Methode für Array-Objekte

7 .prototype.every integrierte Methode für Array-Objekte

8. Array.prototype.indexOf integrierte Methode für Array-Objekte

9. Array.prototype.lastIndexOf integrierte Methode für Array-Objekte

10. .in Schleifenanweisung

es6 new Traversal-Methode hinzugefügt

for...in循环语句

es6新增的遍历方法

findIndex(callback [, thisArg])查找数组中匹配的元素

找到一个就返回匹配的元素的下标,没找到就返回-1。
let arr = [1, 2, 3, 4, 5, 6]// 此时我们找大于2的数
let newArr = arr.findIndex(val => {return val > 2})
console.log(newArr) // 2

find(fn(callback [, thisArg])

查找数组中匹配的元素,找到一个就返回匹配的元素,没找到就返回undefined。

注:下面的例子相对于需求是一个错误的示范,因为我们要找出大于2的数,当找到匹配到3时,满足条件,函数就会停止。

例:

let arr = [1, 2, 3, 4, 5, 6]
// 此时我们找大于2的数
let newArr = arr.find(val => {
    return val > 2
})
console.log(newArr) // 3

entries() , keys() 和 values()

ES6 提供三个新的方法 —— entries(),keys()和values() —— 用于遍历数组和对象。它们都返回一个遍历器对象,可以用for...offindIndex(callback [, thisArg]), um passende Elemente im Array zu finden

for (let index of ['a', 'b'].keys()) {
  console.log(index);
}
// 0
// 1

for (let elem of ['a', 'b'].values()) {
  console.log(elem);
}
// 'a'
// 'b'

for (let [index, elem] of ['a', 'b'].entries()) {
  console.log(index, elem);
}
// 0 "a"
// 1 "b"

find(fn(callback [, thisArg]) um passende Elemente im Array zu finden, find Wenn eines gefunden wird, wird es undefiniert zurückgegeben

Hinweis: Das folgende Beispiel ist eine falsche Demonstration in Bezug auf die Anforderungen, da wir eine Zahl finden möchten, die größer als ist 2. Wenn eine Übereinstimmung von 3 gefunden wird, ist die Bedingung erfüllt und die Funktion wird gestoppt (),keys() undvalues() – für Traverse-Arrays und -Objekte. Sie geben beide ein Traverser-Objekt zurück, das mit einer for...of-Schleife durchlaufen werden kann () durchläuft den Schlüsselnamen, und changes() durchläuft den Schlüsselnamen. Beim Durchlaufen von Schlüsselwerten durchläuft „entrys()“ Schlüssel-Wert-Paare. 🎜
let letter = ['a', 'b', 'c'];  
let entries = letter.entries();  
console.log(entries.next().value); // [0, 'a']  
console.log(entries.next().value); // [1, 'b']  
console.log(entries.next().value); // [2, 'c']
🎜Wenn Sie keine for...of-Schleife verwenden, können Sie dies manuell tun Rufen Sie die nächste Methode des zu durchlaufenden Traverser-Objekts auf

Das obige ist der detaillierte Inhalt vonWas sind die neuen Traversal-Methoden in es6?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn