2012-06-07 63 views

回答

5

arguments是在咖啡腳本中可用了。所以,你可以這樣做:

method.apply @, arguments

2

如果你想讓它像JavaScript一樣工作,你可能可以,但coffeescript已經「splats」你可能試圖完成。下面是從coffeescript.org的解釋:

gold = silver = rest = "unknown" 

awardMedals = (first, second, others...) -> 
    gold = first 
    silver = second 
    rest = others 

contenders = [ 
    "Michael Phelps" 
    "Liu Xiang" 
    "Yao Ming" 
    "Allyson Felix" 
    "Shawn Johnson" 
    "Roman Sebrle" 
    "Guo Jingjing" 
    "Tyson Gay" 
    "Asafa Powell" 
    "Usain Bolt" 
] 

awardMedals contenders... 

alert "Gold: " + gold 
alert "Silver: " + silver 
alert "The Field: " + rest 
+0

我不明白這是如何回答他的問題的? –

+2

它實際上,我發現了一分鐘前相同的報價 –

+1

申請的目標是運行一個特定對象上的函數(自己設置'this'),我不明白這是怎麼做的例子中,你會介意解釋? –

16

使用提示圖標,你可以使用吸塵器CoffeeScript的語法:

caller: -> 
    @method arguments... 

以上編譯爲以下JavaScript:

caller: function() { 
    return this.method.apply(this, arguments); 
} 
+0

這是一些不錯的咖啡! –

+0

以下是Spats的文檔:http://coffeescript.org/#splats – Hengjie

相關問題