为什么有些对象在IE中没有构造函数?

时间:2009-01-28 12:46:51

标签: javascript internet-explorer dom object constructor

下面的JavaScript代码在不同的浏览器中有不同的效果:

document.write(this.location.constructor);
document.write("<br/>");
document.write(this.constructor);
document.write("<br/>");

在Chrome中,该页面包含:

function Location() { [native code] }
function DOMWindow() { [native code] }

在Firefox中,该页面包含:

[object Location]
[object Window]

在IE8中,页面包含:

undefined
undefined

Chrome和Firefox之间的差异可能是toString()个不同的实施。我只是无法理解为什么IE中的两个对象的构造函数是 undefined 。如果它们的构造函数未定义,那么它们的原型呢?它们还 未定义 吗?

1 个答案:

答案 0 :(得分:1)

使用IE8调试控制台,使用您提供的代码作为示例我没有任何问题。

我的结果......

[object Location]
[object Window]

你确定其他东西不会导致这些失败吗?