Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mendapatkan Nilai daripada Objek Bersarang Dalam Menggunakan Laluan Rentetan?

Bagaimana untuk Mendapatkan Nilai daripada Objek Bersarang Dalam Menggunakan Laluan Rentetan?

Barbara Streisand
Barbara Streisandasal
2024-10-24 23:30:30304semak imbas

How to Retrieve Values from Deeply Nested Objects Using String Paths?

Mendapatkan semula Nilai Objek Bersarang Dalam dengan Laluan Rentetan

Masalah:

Mencari fungsi yang mengambil nilai daripada bersarang dalam objek dengan melintasi laluan rentetan yang mewakili struktur bersarang. Contohnya:

<code class="javascript">var obj = {
  foo: { bar: 'baz' }
};
// Retrieve obj.foo.bar's value with the string "foo.bar"
getValue(obj, "foo.bar");</code>

Penyelesaian:

Penyelesaian berikut menavigasi objek bersarang dengan berkesan menggunakan laluan rentetan yang disediakan:

<code class="javascript">function getValue(obj, path) {
  var pathParts = path.split('.');
  for (var i = 0; i < pathParts.length; i++) {
    obj = obj[pathParts[i]];
  }
  return obj;
}</code>

Penjelasan:

  1. Laluan rentetan dibahagikan kepada tatasusunan kekunci objek (dalam contoh kami, ["foo", "bar"]).
  2. Kami mengulangi melalui tatasusunan, mendapatkan semula nilai yang dikaitkan dengan setiap kunci.
  3. Hasil akhir mewakili nilai pada laluan yang disediakan.

Contoh:

<code class="javascript">var obj = {
  foo: { bar: 'baz' }
};
console.log(getValue(obj, "foo.bar")); // Output: "baz"</code>

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai daripada Objek Bersarang Dalam Menggunakan Laluan Rentetan?. 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