我经常看到的JavaScript代码,其中一个功能可能需要在“选项”对象,并使用它像:的JavaScript未定义检查
var name = typeof options.name !== 'undefined' ? options.name : "Bob";
这似乎将是等同于以下:
var name = options.name || "Bob";
现在,我知道在某些情况下,您可能会注意options.name
为undefined
和null
,这对我来说很有意义,但我经常在没有必要区分这种情况下看到这一点。
我相信我听说过人们编写这样的代码是因为IE中存在一些bug。有人可以详细说明吗?