Bagaimanakah Anda Boleh Mengendalikan Nilai Null dan Mengakses Sifat Objek Dengan Selamat dalam JavaScript?

Barbara Streisand
Lepaskan: 2024-11-01 13:50:03
asal
819 orang telah melayarinya

How Can You Handle Null Values and Access Object Properties Safely in JavaScript?

Elvis dan Operator Navigasi Selamat dalam JavaScript

Di Java, pengendali Elvis (?:) dan Safe Navigation (?.) menyediakan cara yang mudah untuk mengendalikan nilai nol dan mengakses sifat objek dengan selamat. Walaupun JavaScript tidak menawarkan pengendali tepat ini, pendekatan alternatif wujud.

Elvis Operator (?:)

Untuk mencapai kefungsian operator Elvis, anda boleh menggunakan operator logik 'ATAU' (||):

<code class="js">const displayName = user.name || "Anonymous";</code>
Salin selepas log masuk

Operator Navigasi Selamat (?.)

JavaScript pada masa ini tidak mempunyai persamaan dengan Safe Pengendali navigasi. Walau bagaimanapun, anda boleh menggunakan corak berikut sebaliknya:

<code class="js">const streetName = user?.address?.street;</code>
Salin selepas log masuk

Jika mana-mana bahagian rantaian (cth., pengguna, alamat, jalan) adalah batal, streetName akan ditetapkan kepada null. Kaedah ini mengelakkan potensi NullPointerExceptions.

Penyelesaian Alternatif

Jika anda inginkan sintaks pengendali Elvis dan Safe Navigation, pertimbangkan untuk menggunakan CoffeeScript. Ia menawarkan pintasan yang serupa:

Operator Kewujudan

<code class="coffee">zip = lottery.drawWinner?().address?.zipcode</code>
Salin selepas log masuk

Pintasan Fungsi

<code class="coffee">() -> // equivalent to function(){}</code>
Salin selepas log masuk

Fungsi Seksi Memanggil

<code class="coffee">func 'arg1', 'arg2' // equivalent to func('arg1', 'arg2')</code>
Salin selepas log masuk

Walaupun sintaks CoffeeScript mungkin lebih ekspresif, ia memerlukan kompilasi atau sisipan sebagai '

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!