Rumah >hujung hadapan web >tutorial js >Bagaimanakah Rantaian Pilihan dan Penggabungan Nullish Memudahkan Akses Harta Null-Safe dalam JavaScript?

Bagaimanakah Rantaian Pilihan dan Penggabungan Nullish Memudahkan Akses Harta Null-Safe dalam JavaScript?

Patricia Arquette
Patricia Arquetteasal
2024-12-09 11:39:11790semak imbas

How Do Optional Chaining and Nullish Coalescing Simplify Null-Safe Property Access in JavaScript?

NULL-Safe Property Access and Conditional Assignment in EcmaScript 6

EcmaScript 6 menawarkan pengendali yang berkuasa untuk menyelaraskan akses hartanah dan penetapan bersyarat dengan cara yang ringkas dan cekap.

Tugasan Bersyarat

Dalam JavaScript yang lebih lama versi, logik yang diingini boleh dicapai menggunakan blok cuba/tangkap:

const query = succeed => (succeed ? { value: 4 } : undefined);

let value = 3;
for (let x of [true, false]) {
  try { value = query(x).value; } catch {} // Don´t assign if no .value
}
console.log(value); // Outputs: 4

Rantai Pilihan

Kini, dengan rantaian pilihan, logik ini boleh dipermudahkan dengan ketara:

const query = succeed => (succeed ? { value: 4 } : undefined);

let value = 3;
for (let x of [true, false]) {
  value = query(x)?.value; // Assign only if `.value` exists
}
console.log(value); // Outputs: 4

The ?. operator menyemak sama ada query(x) bukan nol dan tidak ditentukan, dan hanya kemudian mengakses sifat nilai. Jika query(x) adalah null atau undefined, ia mengembalikan undefined tanpa membuang ralat.

Nullish Coalescing

Untuk nilai nullable, nullish coalescing operator (??) boleh digunakan:

const query = succeed => (succeed ? { value: 4 } : undefined);

let value = 3;
for (let x of [true, false]) {
  value ??= query(x).value; // Assign only if `value` is null or undefined
}
console.log(value); // Outputs: 4

The ?? operator membandingkan operan kiri kepada null atau undefined, dan jika benar, berikan operan kanan. Dalam kes ini, nilai akan dikemas kini hanya jika ia pada mulanya batal atau tidak ditentukan.

Perhatikan bahawa pengendali ini disokong dalam penyemak imbas moden dan boleh digunakan dengan Babel untuk keserasian merentas penyemak imbas.

Atas ialah kandungan terperinci Bagaimanakah Rantaian Pilihan dan Penggabungan Nullish Memudahkan Akses Harta Null-Safe 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