Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Mengulang Melalui Objek Bersarang dalam JavaScript?

Bagaimanakah Saya Mengulang Melalui Objek Bersarang dalam JavaScript?

DDD
DDDasal
2024-12-11 13:07:14973semak imbas

How Do I Iterate Through Nested Objects in JavaScript?

Menggelung Melalui Ahli Objek Objek Biasa JavaScript

Apabila bekerja dengan objek JavaScript, selalunya perlu untuk mengulang melalui ahli mereka. Walau bagaimanapun, apabila objek mengandungi sub-objek, gelung melaluinya memerlukan pendekatan khusus.

Gelung Berasaskan Pasangan Nilai-Kekunci

Untuk menggelung melalui objek JavaScript biasa , anda boleh gunakan:

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

Contoh:

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);
}

Lelaran Objek Bersarang

Apabila berurusan dengan objek bersarang, anda boleh guna bersarang gelung:

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
    }
}

Contoh:

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);
    }
}

Pendekatan ini memastikan anda mengulangi semua pasangan nilai kunci, walaupun untuk objek bersarang.

Atas ialah kandungan terperinci Bagaimanakah Saya Mengulang Melalui Objek Bersarang dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn