Fungsi Anak Panah - Topik ini boleh mengelirukan ramai pembangun. Berikut ialah penjelasan ringkas tentang fungsi anak panah berserta beberapa petunjuk tentangnya:
Apa ?
Fungsi anak panah (=>) ialah sintaks yang lebih pendek untuk menulis fungsi dalam JavaScript. Mereka tidak mempunyai ini, hujah atau prototaip sendiri dan mereka menerima pakai konteks ini daripada skop sekeliling mereka.
Kenapa ?
Fungsi anak panah diperkenalkan untuk memudahkan sintaks fungsi penulisan, terutamanya untuk panggilan balik dalam talian. Mereka juga menjadikannya lebih mudah untuk mengendalikan perkara ini dengan mewarisinya secara leksikal dari skop luar, menghapuskan keperluan untuk mengikat atau diri = penyelesaian ini.
Bila ?
Gunakan fungsi anak panah:
Untuk panggilan balik sebaris dalam kaedah tatasusunan (cth., peta, penapis, forEach), pendengar acara atau rantai janji.
Apabila anda memerlukan skop leksikal ini, seperti dalam kaedah atau panggilan balik yang bergantung pada konteks sekeliling.
Kes Penggunaan:
Panggil balik tatasusunan: array.map(item => item * 2)
Pengendali acara dalam React: onClick={() => this.handleClick()}
Operasi tak segerak: .then(result => console.log(result))
Had:
Tiada konteks ini: Tidak boleh digunakan sebagai kaedah dalam objek jika mereka memerlukannya sendiri.
Tiada objek argumen: Tidak sesuai untuk fungsi yang memerlukan akses kepada argumen.
Tidak boleh digunakan sebagai pembina: Fungsi anak panah tidak mempunyai prototaip, jadi ia tidak boleh digunakan dengan yang baharu.
Jadi, lain kali anda menulis kod dengan fungsi anak panah, tanya diri anda sama ada ia benar-benar diperlukan dalam situasi itu atau jika anda boleh menggunakan fungsi biasa. Jangan hanya menggunakan satu gaya tanpa berfikir. Fahami sebab pilihan anda dan kemudian buat keputusan anda.
Di bawah coretan yang menerangkan perkara di atas secara praktikal.
Atas ialah kandungan terperinci Satu lagi dalam - Kembali ke Asas ♻️ - ⬆️Anak Panah⬇️ Berfungsi dalam Js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!