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>
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>
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>
Menetapkan db.mongodb.user kepada 'root ' akan menghasilkan:
<code class="javascript">obj = { db: { mongodb: { host: 'localhost', user: 'root' } } };</code>
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!