ES6 menambahkan fungsi panah-lemak ( =>), yang memiliki dua perbedaan utama dari fungsi normal:
- sintaksis yang lebih pendek (termasuk pengembalian implisit jika Anda menggunakan satu-ekspresi tubuh)
- mewarisi
thisdari lingkup sekitarnya
Keduanya adalah fitur yang sangat berguna, tetapi bagi saya tampaknya benar-benar terpisah dalam nilai dan aplikasinya - kadang-kadang saya menginginkan satu, atau yang lain, atau keduanya, atau tidak sama sekali. Tampaknya aneh bahwa jika saya ingin menggunakan fungsi pendek sintaks, saya harus juga menggunakan thisperilaku -modifying. Dan sebaliknya. Saya tidak melihat mengapa kedua kemampuan ini diterapkan sebagai tambahan tunggal untuk bahasa tersebut.
Bagaimana jika saya ingin menggunakan fungsi sintaks pendek untuk pengembalian implisit dan singkatnya (dalam beberapa konteks di mana penuh function (..) { return ...}akan sedikit kurang terbaca), tetapi saya ingin menggunakan thisdalam fungsi saya untuk merujuk ke konteks panggilan? Tidak ada cara untuk melakukan ini.
CoffeeScript memiliki fungsi keduanya ->dan =>style, dan tampaknya ES6 meminjam =>style dari sana. Jadi pertanyaan saya adalah, mengapa ES6 juga tidak meminjam ->gaya?
thiske penutupan dalam deklarasi fungsi penuh. Ini mungkin bukan bagian yang Anda khawatirkan.
argumentskeduanya.