JavaScript Pour In

La Boucle For In

La boucle for...in itère sur les propriétés énumérables d'un objet.

La boucle for...in est principalement utilisée pour accéder aux noms de propriété (clés) des objets.

Syntaxe

for ( key in object ) {
// bloc de code à exécuter
}
  • key
    Une variable qui contient le nom (clé) de chaque propriété pendant les itérations
  • object
    L'objet dont les propriétés sont itérées

Une déclaration JavaScript for in boucle à travers les propriétés d'un objet personne :

Exemple

const person = {fname:"John", lname:"Doe", age:25};

let text = "";
for (let x in person) {
text += person[x];
}
Essayez-le Vous-Même »

Exemple Expliqué

  • La boucle for in itère sur un objet person
  • Chaque itération renvoie un x (une clé)
  • Le x est utilisé pour accéder à la valeur correspondante
  • La valeur de x est person[x]

For In Sur les Tableaux

La déclaration JavaScript for in peut également itérer sur les propriétés d'un tableau :

Syntaxe

for (variable in array) {
code
}

Exemple

const numbers = [45, 4, 9, 16, 25];

let txt = "";
for (let x in numbers) {
txt += numbers[x];
}
Essayez-le Vous-Même »

Flux de Contrôle

Comme dans d'autres boucles JavaScript, vous pouvez utiliser des instructions de contrôle à l'intérieur de la boucle :

  • break
    interrompt l'exécution de la boucle et passe aux instructions qui suivent
  • continue
    interrompt l'exécution de la boucle et passe à l'itération suivante

Propriétés Énumérables

La boucle for...in n'itère que sur les propriétés énumérables.

Les propriétés dont l'attribut énumérable est défini sur false, comme certaines méthodes ou propriétés intégrées définies avec Object.defineProperty() , ne seront pas incluses.


La Chaîne de Prototype

La boucle for...in itère également sur les propriétés énumérables héritées de la chaîne de prototype de l'objet. Pour éviter cela, vous pouvez utiliser hasOwnProperty() à l'intérieur de la boucle pour vérifier si la propriété appartient directement à l'objet lui-même.



Remarque

Ne pas utiliser for in sur un tableau si l' ordre des index est important.

L'ordre des index dépend du moteur, et les valeurs du tableau peuvent ne pas être accessibles dans l'ordre attendu.

Il est préférable d'utiliser une boucle for , une boucle for of , ou Array.forEach() lorsque l'ordre est important.

Array.forEach()

La méthode forEach() appelle une fonction (une fonction de rappel) une fois pour chaque élément du tableau.

Exemple

const numbers = [45, 4, 9, 16, 25];

let txt = "";
numbers.forEach(myFunction);

function myFunction(value, index, array) {
txt += value;
}
Essayez-le Vous-Même »

Notez que la fonction prend 3 arguments :

  • La valeur de l'élément
  • L'index de l'élément
  • Le tableau lui-même

L'exemple ci-dessus utilise uniquement le paramètre de valeur. Il peut être réécrit comme suit :

Exemple

const numbers = [45, 4, 9, 16, 25];

let txt = "";
numbers.forEach(myFunction);

function myFunction(value) {
txt += value;
}
Essayez-le Vous-Même »