Rantaian Pilihan dan Penggabungan Nullish

王林
Lepaskan: 2024-08-21 06:13:02
asal
766 orang telah melayarinya

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
Salin selepas log masuk

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
Salin selepas log masuk

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
Salin selepas log masuk

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!

sumber:dev.to
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!