在以下代码中
x= (f,n) -> f(n)
...
x( (n) -> n+1 , 5) #parse error
如何解决上面的解析错误?
由于
答案 0 :(得分:28)
一对括号可以解决这个问题,只是在IRC上找到答案。
x( (n) -> n+1 , 5) #parse error
x ((n) -> n+1) , 5 #fixed
答案 1 :(得分:17)
我通常会这样做:
foo ->
doStuff('foo')
, 5
或者这个:
fn = -> doStuff('foo')
foo fn, 5
在参数列表中包含额外的parens从来没有和我坐在一起,因为我的大脑难以解析。
答案 2 :(得分:2)
阿里的答案与他提出的问题略有不同。一个正确的解决方案是
x = (f,n) -> f(n)
x(( -> n+1), 5)