Comprendre la différence entre (pour... dans) et (pour... de) les déclarations
Introduction
Javascript propose deux instructions de boucle, (for... in) et (for... of), qui servent des objectifs distincts lors de l'itération sur des objets et des données. structures.
for... of : Itération sur les valeurs de propriété
L'instruction (for... of), introduite dans ES6, fournit un moyen pratique d'itérer sur les valeurs des propriétés d'un objet. Contrairement à (for... in), qui boucle sur les noms de propriétés, (for... of) se concentre spécifiquement sur les valeurs des propriétés.
Cette distinction devient claire dans l'exemple fourni :
var arr = [3, 5, 7]; arr.foo = "hello"; for (var i in arr) { console.log(i); // logs "0", "1", "2", "foo" } for (var i of arr) { console.log(i); // logs "3", "5", "7" }
While (for... in) enregistre les deux indices numériques ("0", "1", "2") et la propriété personnalisée "foo" (les itérateurs ES6 excluent généralement les clés), (for... of) uniquement enregistre les valeurs numériques des propriétés ("3", "5", "7"). La raison en est que (for... of) utilise un itérateur spécifique à un objet qui se concentre sur les valeurs des propriétés.
En résumé, (for... of) offre une manière concise et centrée sur la valeur de parcourir les propriétés d’un objet. Il ignore les propriétés non indexées, telles que la propriété "foo" dans l'exemple, et fournit directement les valeurs de propriété sous forme d'itérations de boucle.
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!