Saya tidak berpikir saya sudah gulai kari. Saya mengerti apa yang dilakukannya, dan bagaimana melakukannya. Saya tidak bisa memikirkan situasi yang akan saya gunakan.
Di mana Anda menggunakan currying di JavaScript (atau di mana perpustakaan utama menggunakannya)? Manipulasi DOM atau contoh pengembangan aplikasi umum diterima.
Salah satu jawaban menyebutkan animasi. Fungsinya seperti slideUp
, fadeIn
mengambil elemen sebagai argumen dan biasanya merupakan fungsi kari yang mengembalikan fungsi orde tinggi dengan built-in "fungsi animasi". Mengapa itu lebih baik daripada hanya menerapkan fungsi yang lebih tinggi dengan beberapa default?
Apakah ada kekurangan untuk menggunakannya?
Seperti yang diminta di sini adalah beberapa sumber daya yang baik pada currying JavaScript:
- http://www.dustindiaz.com/javascript-curry/
- Crockford, Douglas (2008) JavaScript: The Good Parts
- http://www.svendtofte.com/code/curried_javascript/ (Memutar jalan memutar ke ML, maka lewati seluruh bagian dari “Kursus kilat dalam ML” dan mulai lagi dari “Cara menulis kari JavaScript”)
- http://web.archive.org/web/20111217011630/http://blog.morrisjohns.com:80/javascript_closures_for_dummies
- Bagaimana cara kerja penutupan JavaScript?
- http://ejohn.org/blog/partial-functions-in-javascript (Mr. Resig pada uang seperti biasa)
- http://benalman.com/news/2010/09/partial-application-in-javascript/
Saya akan menambahkan lebih banyak saat mereka muncul di komentar.
Jadi, menurut jawaban, aplikasi currying dan parsial pada umumnya adalah teknik kenyamanan.
Jika Anda sering "memperbaiki" fungsi tingkat tinggi dengan memanggilnya dengan konfigurasi yang sama, Anda dapat mengubah (atau menggunakan parsial Resig) fungsi tingkat yang lebih tinggi untuk membuat metode pembantu yang sederhana dan ringkas.
svendtofte.com
tampak sudah mati - menemukannya di mesin WayBack meskipun di web.archive.org/web/20130616230053/http : //www.svendtofte.com/... Maaf, blog.morrisjohns.com/javascript_closures_for_dummies tampaknya mati juga