Rumah >hujung hadapan web >tutorial js >Rantaian Pilihan dan Penggabungan Nullish

Rantaian Pilihan dan Penggabungan Nullish

王林
王林asal
2024-08-21 06:13:02822semak imbas

Optional Chaining and Nullish Coalescing

Rantaian Pilihan: Pengakses Anggun

Katakan anda mempunyai objek yang mewakili pengguna dan anda mahu mengakses alamat mereka.

Pada masa lalu, anda mungkin pernah melakukan sesuatu seperti ini:

const user = {
 name: "Alice",
 address: { street: "123 Main St" }
};

const street = user.address && user.address.street;

console.log('Street: ', street); // Output: 123 Main St

Tetapi apa yang berlaku jika objek pengguna tidak mempunyai sifat alamat atau objek alamat tidak mempunyai harta jalan?

Anda akan mendapat ralat!

Masukkan Rantaian Pilihan!

Pengendali ini (?.) membenarkan anda mengakses sifat bersarang dengan selamat, mengembalikan tidak ditentukan jika mana-mana bahagian rantai hilang.

Contohnya:

const user = {
 name: "Bob"
};

const street = user.address?.street;
console.log('Street: ', street); // Output: undefined

Lihat betapa lebih bersih dan ringkas kod itu?

Penyatuan Batal

Pelindung Nilai Lalai.

Sekarang, mari bayangkan anda mahu memberikan nilai lalai kepada pembolehubah jika ia batal atau tidak ditentukan. Secara tradisinya, anda mungkin menggunakan operator OR (||). Walau bagaimanapun, ini boleh membawa kepada gelagat yang tidak dijangka jika pembolehubah itu memegang nilai "palsu" seperti 0 atau rentetan kosong.

Mengapa ia berguna:

  • Ia memudahkan kod dengan menggantikan verbose if pernyataan atau operator ternary.
  • Ia memfokuskan secara khusus pada null dan undefined, tidak seperti operator OR logik (||) yang turut menganggap nilai palsu (seperti 0 atau rentetan kosong) sebagai "hilang".
let userSettings = null; // Imagine this comes from an API or user input

// Without nullish coalescing:
let theme = userSettings !== null && userSettings !== undefined ? userSettings.theme : 'light';

// With nullish coalescing:
let theme = userSettings?.theme ?? 'light'; // If userSettings.theme is null or undefined, 'light' is used

Perkara utama:

  • Sebelah kiri ?? dinilai dahulu.
  • Jika bahagian kiri batal atau tidak ditentukan, bahagian kanan dikembalikan.
  • Jika tidak, bahagian kiri dikembalikan.

Ia amat berguna apabila berurusan dengan sifat pilihan atau data yang berpotensi hilang.


Perangkaian pilihan dan penggabungan batal membantu anda menulis kod yang lebih mudah dibaca, teguh dan tahan ralat.

Atas ialah kandungan terperinci Rantaian Pilihan dan Penggabungan Nullish. 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
Artikel sebelumnya:Bermula dengan Node JSArtikel seterusnya:Bermula dengan Node JS