Quels sont les objets itérables intégrés dans JS ? Une analyse complète nécessite des exemples de code spécifiques
En JavaScript, un objet itérable fait référence à un objet dont les éléments sont accessibles à l'aide d'un itérateur. Après ES6, de nombreuses structures de données intégrées implémentent le protocole itérable et peuvent être parcourues via une boucle for...of ou à l'aide d'un objet itérateur.
Les objets itérables suivants sont courants dans JS :
Array est l'objet itérable le plus courant. Nous pouvons utiliser une boucle for...of ou utiliser un objet itérateur pour parcourir les éléments d'un tableau. Voici un exemple d'objet tableau :
const arr = [1, 2, 3, 4]; // 使用for...of循环遍历 for (let item of arr) { console.log(item); } // 使用迭代器对象遍历 const iterator = arr[Symbol.iterator](); let result = iterator.next(); while (!result.done) { console.log(result.value); result = iterator.next(); }
Les chaînes sont également des objets itérables. Nous pouvons directement utiliser une boucle for...of ou utiliser un objet itérateur pour parcourir chaque élément du. chaîne de caractères.
const str = 'Hello World'; // 使用for...of循环遍历 for (let char of str) { console.log(char); } // 使用迭代器对象遍历 const iterator = str[Symbol.iterator](); let result = iterator.next(); while (!result.done) { console.log(result.value); result = iterator.next(); }
L'objet Arguments est un objet de type tableau qui contient la liste de paramètres transmise à la fonction lorsque la fonction est appelée. C'est également un objet itérable, vous pouvez donc utiliser une boucle for...of pour parcourir chaque paramètre qu'il contient.
function sum() { for (let arg of arguments) { console.log(arg); } } sum(1, 2, 3, 4);
Set et Map sont de nouvelles structures de données introduites dans ES6, ce sont également des objets itérables et leurs éléments peuvent être parcourus à l'aide d'une boucle for...of ou d'un objet itérateur.
const set = new Set([1, 2, 3]); // 使用for...of循环遍历Set中的元素 for (let item of set) { console.log(item); } // 使用迭代器对象遍历Set中的元素 const iterator = set[Symbol.iterator](); let result = iterator.next(); while (!result.done) { console.log(result.value); result = iterator.next(); } const map = new Map([ ['name', 'John'], ['age', 25] ]); // 使用for...of循环遍历Map中的元素 for (let [key, value] of map) { console.log(key, value); } // 使用迭代器对象遍历Map中的元素 const iterator = map[Symbol.iterator](); let result = iterator.next(); while (!result.done) { console.log(result.value); result = iterator.next(); }
Generator est une fonction spéciale qui peut suspendre et reprendre le processus d'exécution via le mot-clé rendement. Les objets générateurs sont également des objets itérables et peuvent être parcourus à l'aide d'une boucle for...of ou à l'aide d'un objet itérateur.
function* generatorFunc() { yield 1; yield 2; yield 3; } const generator = generatorFunc(); // 使用for...of循环遍历Generator中的元素 for (let item of generator) { console.log(item); } // 使用迭代器对象遍历Generator中的元素 const iterator = generator[Symbol.iterator](); let result = iterator.next(); while (!result.done) { console.log(result.value); result = iterator.next(); }
Résumé : les objets ci-dessus sont des objets itérables intégrés courants en JavaScript, et ils peuvent tous être parcourus via des boucles for...of ou à l'aide d'objets itérateurs. En comprenant ces objets itérables, nous pouvons mieux utiliser les caractéristiques et fonctionnalités qu’ils fournissent.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!