Maison >interface Web >js tutoriel >Comment parcourir des objets imbriqués en JavaScript ?

Comment parcourir des objets imbriqués en JavaScript ?

DDD
DDDoriginal
2024-12-11 13:07:14982parcourir

How Do I Iterate Through Nested Objects in JavaScript?

Boucle à travers les membres d'objet d'un objet JavaScript simple

Lorsque vous travaillez avec des objets JavaScript, il est souvent nécessaire de parcourir leurs membres. Cependant, lorsque l'objet contient des sous-objets, les parcourir en boucle nécessite une approche spécialisée.

Bouclage basé sur des paires de valeurs-clés

Pour parcourir un objet JavaScript simple , tu peux utiliser :

for (var key in object) {
    // Loop through the object's key-value pairs
}

Exemple :

var validation_messages = {
    "key_1": {
        "your_name": "jimmy",
        "your_message": "hello world"
    },
    "key_2": {
        "your_name": "billy",
        "your_message": "foo equals bar"
    }
};

for (var key in validation_messages) {
    // Output: "jimmy" and "billy"
    console.log(validation_messages[key].your_name);
    
    // Output: "hello world" and "foo equals bar"
    console.log(validation_messages[key].your_message);
}

Itération d'objets imbriqués

Lorsque vous traitez des objets imbriqués, vous peut utiliser un imbriqué loop :

for (var key in object) {
    if (!object.hasOwnProperty(key)) continue; // Skip prototype properties

    var subObject = object[key];
    for (var subKey in subObject) {
        // Loop through the sub-object's key-value pairs
    }
}

Exemple :

for (var key in validation_messages) {
    // If property exists in this object
    if (!validation_messages.hasOwnProperty(key)) continue;
    
    var subObject = validation_messages[key];
    
    for (var subKey in subObject) {
        // If property exists in this sub-object
        if (!subObject.hasOwnProperty(subKey)) continue;
        
        // Output: "jimmy" and "billy"
        console.log(validation_messages[key].your_name);
        
        // Output: "hello world" and "foo equals bar"
        console.log(validation_messages[key].your_message);
    }
}

Cette approche garantit que vous parcourez toutes les paires clé-valeur, même pour les objets imbriqués.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn