18
msg = "Saved Successfully"
或
msg = -> "Saved #{@course.title} Successfully"
反正是有典雅获得味精的值,而不知道它是否是一个函数或常规变量,而不是做
success_message = if typeof msg is 'function' then msg() else msg
msg = "Saved Successfully"
或
msg = -> "Saved #{@course.title} Successfully"
反正是有典雅获得味精的值,而不知道它是否是一个函数或常规变量,而不是做
success_message = if typeof msg is 'function' then msg() else msg
有一个CoffeeScript速记你可以利用:
f?()
相当于
f() if typeof f is 'function'
,这意味着你可以写
success_message = msg?() ? msg
这工作,因为msg?()
有undefined
如果msg
不是一个函数值。
警告:如果msg()
回报null
,设置success_message
到msg
功能这将失败。
真的,如果你要做到这一点在你的应用程序,你应该写一个效用函数:
toVal = (x) -> if typeof x is 'function' then x() else x
successMessage = toVal msg
你甚至可以连接toVal
到Object
原型,如果你喜欢冒险的感觉..