这可以变成时髦的单行吗?
thing = thing2 / 32 * 100 * 100
thing = 0 unless thing
答案 0 :(得分:2)
不幸的是,coffeescript不支持三元运算符。但你可以写:
@zoomGlobal = if @position.ratio then @position.ratio / 32 * 100 * 100 else 0
或
@zoomGlobal = @position.ratio / 32 * 100 * 100 || @zoomGlobal
答案 1 :(得分:2)
如果您确信@ position.ratio始终设置为数字,则可以:
@zoomGlobal = @position.ration / 32 * 100 * 100
很快您就可以使用新的**运算符
了@zoomGlobal = @position.ration / 32 * 100 ** 2
如果@ position.ration可能不存在,那么请使用Ivan建议的内容:
@zoomGlobal = if @position.ratio then @position.ratio / 32 * 100 * 100 else 0
另外,我从你的例子中看不出上下文是什么,但请注意
10 / 2 * 2 * 2 == 20
,而
10 / (2 * 2 * 2) == 1.25