Rumah > Artikel > hujung hadapan web > Apakah yang dilakukan oleh \"options = options || {}\" dalam JavaScript?
Memahami "options = options || {}" dalam JavaScript
Apabila menemui coretan kod seperti "options = options || {} ;", ia menimbulkan persoalan tentang fungsinya. Coretan ini selalunya digunakan untuk menetapkan nilai lalai untuk argumen fungsi.
Inti ungkapan ini terletak pada operator logik OR (||). Operator ini menilai operannya mengikut tertib, mengembalikan nilai kebenaran pertama yang ditemuinya atau nilai terakhir jika semuanya palsu. Dalam kes ini, "pilihan" dinilai terlebih dahulu. Jika "pilihan" palsu (tidak ditentukan, batal, 0, "", dsb.), ia dinilai palsu dan ungkapan menjadi "pilihan || {}".
"{}" ialah JavaScript objek literal, mewakili objek kosong. Oleh itu, jika "pilihan" pada mulanya tidak ditentukan, ungkapan ini memberikan objek kosong kepada pembolehubah "pilihan". Jika "pilihan" sudah wujud, penilaian berhenti kerana "pilihan" ialah nilai yang benar.
Corak ini digunakan untuk memulakan argumen fungsi dengan nilai lalai apabila ia dihantar sebagai tidak ditentukan. Contohnya:
function test(options) { options = options || {}; }
Apabila fungsi ini dipanggil tanpa hujah, "pilihan" diberikan objek kosong. Jika "pilihan" diluluskan secara eksplisit sebagai tidak ditentukan, ia juga mengambil nilai lalai.
Kemas Kini ES6
ES6 memperkenalkan nilai parameter lalai, menjadikan ungkapan ini usang untuk menetapkan lalai . Dalam ES6, anda boleh menetapkan nilai lalai menggunakan sintaks berikut:
function test(options = {}) { //... }
Dengan sintaks ini, jika "pilihan" diluluskan sebagai tidak ditentukan atau ditetapkan secara eksplisit kepada tidak ditentukan, ia memerlukan nilai lalai objek kosong . Tidak seperti || corak operator, nilai palsu lain tidak akan mencetuskan penggunaan nilai lalai.
Atas ialah kandungan terperinci Apakah yang dilakukan oleh \"options = options || {}\" dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!