Coffescript支持函数和解构赋值的默认参数。有没有办法将这些功能结合起来?
针对农业的解构分配
({name, age}) ->
"#{name} is #{age} years old?"
默认参数值
(name, age = 18) ->
"#{name} is #{age} years old?"
像
这样的东西({name, age = 18}) -> #syntax error
"#{name} is #{age} years old?"
答案 0 :(得分:2)
这不受支持,这是一个未解决的问题:https://github.com/jashkenas/coffeescript/issues/1558。 ES6 将支持在任何地方使用默认值进行解构,但CS,唉否。
似乎最接近的是在不同的行上初始化:
f = ({a, b})->
b ?= 2
console.log {a: a, b:b}
这种诱人(但丑陋)的语法是“劝阻”,目前在最近版本的coffeescript上对我不起作用,但我想是YMMV。
f = ({a, b}, b=2)->
console.log {a: a, b:b}