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
原型,如果你喜歡冒險的感覺..