Rumah > hujung hadapan web > tutorial js > Bagaimanakah Anda Boleh Menetapkan Sifat Secara Dinamik pada Objek Bersarang dalam JavaScript?

Bagaimanakah Anda Boleh Menetapkan Sifat Secara Dinamik pada Objek Bersarang dalam JavaScript?

Linda Hamilton
Lepaskan: 2024-11-04 15:00:46
asal
1049 orang telah melayarinya

How Can You Dynamically Set Properties on Nested Objects in JavaScript?

Tetapan Harta Dinamik untuk Objek Bersarang

Menetapkan sifat secara dinamik pada objek bersarang yang kompleks boleh menjadi satu cabaran. Untuk menangani perkara ini, pertimbangkan fungsi berikut:

<code class="javascript">function set(path, value) {
    var schema = obj;  // Reference to internal objects within obj
    var pList = path.split('.');
    var len = pList.length;
    for (var i = 0; i < len - 1; i++) {
        var elem = pList[i];
        if (!schema[elem]) schema[elem] = {};
        schema = schema[elem];
    }

    schema[pList[len - 1]] = value;
}</code>
Salin selepas log masuk

Dengan fungsi ini, anda boleh menetapkan atau menulis ganti sifat pada objek bersarang dalam menggunakan laluan yang dipisahkan titik:

<code class="javascript">set('db.mongodb.user', 'root');</code>
Salin selepas log masuk

Apabila fungsi menemui objek yang tidak wujud di sepanjang laluan, ia mencipta objek kosong pada tahap itu. Ini memastikan bahawa sifat boleh ditetapkan pada tahap yang betul tanpa menggabungkan atau menulis ganti nilai sedia ada.

Sebagai contoh, memandangkan objek:

<code class="javascript">var obj = {
    db: {
        mongodb: {
            host: 'localhost'
        }
    }
};</code>
Salin selepas log masuk

Menetapkan db.mongodb.user kepada 'root ' akan menghasilkan:

<code class="javascript">obj = {
    db: {
        mongodb: {
            host: 'localhost',
            user: 'root'
        }
    }
};</code>
Salin selepas log masuk

Dengan menetapkan sifat secara dinamik, anda boleh memanipulasi objek bersarang kompleks dengan mudah, walaupun struktur objek tidak diketahui atau berbeza-beza. Teknik ini menyediakan cara yang berkuasa dan fleksibel untuk mengakses dan mengubah suai data dalam struktur data yang kompleks.

Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Menetapkan Sifat Secara Dinamik pada Objek Bersarang dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan