3

我注意到这document.getElementById是 Firefox 和 Chrome 中的一个函数,而typeof认为它是 IE8 中的一个对象(至少)。

任何人都知道为什么?

4

1 回答 1

8

IE8(尝试)实现 ECMAScript 3,其中typeof运算符结果是为宿主对象定义的实现,无论对象是否实现 [[call]]。在 ES5 中,可调用的宿主对象必须返回"function".

请参阅 ECMAScript 3 中的表格

在此处输入图像描述

与 ECMAScript 5.1 比较http://www.ecma-international.org/ecma-262/5.1/#sec-11.4.3

于 2013-07-31T16:06:13.647 回答