什么让documentElement为0返回

eyc*_*ych 11 javascript dom

大多数JavaScript库包含类似于的行:

    var b = (a ? a.ownerDocument || a: 0).documentElement;
Run Code Online (Sandbox Code Playgroud)

如果anull,(0).documentElement应该返回什么?

hsz*_*hsz 4

来自jQuery/Sizzle评论:

http://jsapi.info/jquery/1.7.2/jQuery.isXMLDoc

documentElement 在尚不存在的情况下进行验证(例如在 IE 中加载 iframe - #4833)

所以这只是返回的可爱语法- 这是调用undefined的结果。documentElement0

下一行有检查:

return documentElement ? documentElement.nodeName !== "HTML" : false;
Run Code Online (Sandbox Code Playgroud)

所以无论如何它都会返回 false。