我总是在开发人员工具中看到,两个实体(baseURI和URL)都显示相同的URL,大部分时间都显示在地址栏中。这些是window.document
对象的属性。那么什么时候基URI属性是“未定义”的情况?
他们做不同的事情。
对于地址栏中的内容,您通常需要window.location.href
。
另一方面,节点的baseURI
property用作解析该节点内的相对URL的基础,例如图像的src
或链接的href
。可以通过添加baseURI
来改变<base>
element。
我没有发现baseURI
是undefined
的情况。即使在通过document.implementation.createDocument
创建的文档中,它也只是从当前的document
继承而来。添加空的<base>
元素无效。将undefined
分配给baseURI
完全被忽略了。