Rumah > Artikel > hujung hadapan web > Bagaimanakah Anda Boleh Mengendalikan Nilai Null dan Mengakses Sifat Objek Dengan Selamat dalam 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>
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>
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>
Pintasan Fungsi
<code class="coffee">() -> // equivalent to function(){}</code>
Fungsi Seksi Memanggil
<code class="coffee">func 'arg1', 'arg2' // equivalent to func('arg1', 'arg2')</code>
Walaupun sintaks CoffeeScript mungkin lebih ekspresif, ia memerlukan kompilasi atau sisipan sebagai '