我对 JSLint 感到困惑。
我的代码最初检查是否div:jqmData("me")
未定义,如下所示:
if ( typeof el.jqmData("me") == "undefined"
? el.not(':jqmData(panel="main")').length > 0
: el.not(':jqmData(me="first")').length > 0 ){
}
JSLint 抱怨我应该用typeof
with替换检查===
,所以我这样做了:
if ( el.jqmData("me") === "undefined"
? el.not(':jqmData(panel="main")').length > 0
: el.not(':jqmData(me="first")').length > 0 ){
}
JSLint 不再抱怨,但是我的嵌套 if 语句被破坏了,因为我现在总是以第二个 if 结束,el.not(':jqmData(me="first")').length
即使我不应该这样做。
问题:
为什么 JSLint 推荐===
over typeof == undefined
?这怎么会打破我的逻辑?
感谢您的启发...