6
如果警報值未定義,如何防止啓動Javascript警報?換句話說,這樣的事情:檢查以查看Javascript中是否存在值
if (alert(message) != 'undefined') {
alert(message);
}
如果警報值未定義,如何防止啓動Javascript警報?換句話說,這樣的事情:檢查以查看Javascript中是否存在值
if (alert(message) != 'undefined') {
alert(message);
}
使用typeof
:
if (typeof message !== 'undefined')
不要把alert(message)
到if
表達,否則就會執行alert
(這是我們希望避免我們之前知道message
的類型)和返回值(也是undefined
btw;))將與undefined
進行比較。
更新澄清了!==
:
該運營商不僅比較兩個操作數的值也是類型。這意味着沒有type coercion做:
42 == "42" // true
42 === "42" // false
在這種情況下,它是不是真的有必要,因爲我們知道,typeof
總是返回一個字符串,但它是很好的做法,如果你徹底和堅持使用它,它更不清楚的地方你真的想要類型強制,而不是。
請注意Felix如何使用!==運算符而不是!=。道格拉斯克羅克福德在這裏解釋了這個(和其他很棒的JS事實):http://video.yahoo.com/watch/630959/2974197 – danjah 2010-12-21 23:54:37