Istilah "operator percikan" berasal dari Ruby, di mana *karakter (kadang-kadang disebut "percikan" —lihat entri File Jargon ) digunakan untuk menunjukkan bahwa entri dalam daftar argumen harus "menyerap" daftar argumen.
CoffeeScript mengadopsi lingkar Ruby-gaya yang sangat dini (lihat masalah 16 ), tetapi pada saran Douglas Crockford, sintaks berubah dari *xke x...beberapa minggu kemudian (lihat masalah 45 ). Namun demikian, CoffeeScripters masih mengacu pada sintaks sebagai "splat" atau "splat operator."
Mengenai apa yang sebenarnya mereka lakukan, percikan mengiris argumentsobjek sedemikian rupa sehingga argumen yang dicipratkan menjadi larik dari semua argumen "ekstra". Contoh paling sepele adalah
(args...) ->
Dalam hal ini, argshanya akan menjadi salinan array arguments. Argumen percikan bisa muncul sebelum, sesudah, atau di antara argumen standar:
(first, rest...) ->
(rest..., last) ->
(first, rest..., last) ->
Dalam dua kasus pertama, jika fungsi menerima 0-1 argumen, restakan menjadi array kosong. Dalam kasus terakhir, fungsi perlu menerima lebih dari 2 argumen restagar tidak kosong.
Karena JavaScript tidak mengizinkan banyak tanda tangan untuk fungsi dengan nama yang sama (seperti yang dilakukan C dan Java), percikan adalah penghemat waktu yang sangat besar untuk menangani berbagai jumlah argumen.
arguments+call: stackoverflow.com/questions/17380315/…