我經常看到的JavaScript代碼,其中一個功能可能需要在「選項」對象,並使用它像:的JavaScript未定義檢查
var name = typeof options.name !== 'undefined' ? options.name : "Bob";
這似乎將是等同於以下:
var name = options.name || "Bob";
現在,我知道在某些情況下,您可能會注意options.name
爲undefined
和null
,這對我來說很有意義,但我經常在沒有必要區分這種情況下看到這一點。
我相信我聽說過人們編寫這樣的代碼是因爲IE中存在一些bug。有人可以詳細說明嗎?