已存在這樣的Javascript代碼:CoffeeScript的函數調用 - 參數和支架
var re = /some_regex/g;
return re.exec(link.attr('href'))[0]
如何的CoffeeScript 稱這種現象的CoffeeScript有括號不需要參數,但是沒有在參數的函數另一個電話。
我已經試過:
re = /some_regex/g
re.exec link.attr 'href' [0] # compile error: unexpected [
re.exec (link.attr 'href')[0] # javascript: re.exec((link.attr('href'))[0]);
re.exec (link.attr('href'))[0] # javascript: re.exec((link.attr('href'))[0]);
如何做到這一點?或者我應該做
// adding new variable
temp = re.exec link.attr 'href'
temp[0]
我明白了。感謝您的回答 –
爲了進一步闡明:通常,CoffeeScript的隱含parens延伸到表達式的末尾。所以'link.attr'href'[0]'等價於'link.attr('href'([0]))',這是沒有意義的。 –
對我以前的評論的一個小修改:''href'[0]'本身是一個無效的表達式,因爲'x [y]'編譯爲'x([y])'並且編譯器識別出字符串不是函數。 –