这是我的coffeescript代码:
if c.urls.voice then c.urls.voice else ""
有没有人对是否有更好的方法在Coffeescript中编写此代码有任何想法?
答案 0 :(得分:3)
只需使用existential operator分配给不存在的变量/属性:
c.urls.voice ?= ""
或者,如果您不想分配它但只能使用默认值进行访问,请使用or
(或||
)运算符:
… = c.urls.voice or "" // equivalent to your if statement
然而,我猜你甚至在这里实际上正在寻找专门检查null
和undefined
值的存在运算符,而不是所有虚假值:
… = c.urls.voice ? ""
答案 1 :(得分:0)
我发现这对我有用:
imap_fetch_overview
将编译成:
c.urls.voice ? ""