我正在尝试将2个函数传递给函数,第一个函数返回一个对象。
不知何故,解析器得到'错误',我不知道如何解决这个问题。 我希望在单行代码中使用它
我的CS
foo (a, b) -> bar {gna: foo}, (a, b) -> a is b
JS
foo(function(a, b) {
return bar({
gna: foo
}, function(a, b) {
return a === b;
});
});
预期的JS
foo(
function(a, b) {
return bar({gna: foo});
}, function(a, b) {
return a === b;
}
);
答案 0 :(得分:2)
在编译器猜错时,将括号中的一个或两个匿名函数包装将消除语法歧义:
foo ((a, b) -> bar { gna: foo }), (a, b) -> a is b
答案 1 :(得分:0)
foo(
(a, b) -> bar {gna: foo}
(a, b) -> a is b
(a, b) ->
a += b
a isnt b
(a, b) -> a+b
)