尝试IE时出错(在window.external中为var i)

时间:2009-05-27 23:04:57

标签: javascript

我正在使用JavaScript构建对象/属性转储。此代码在Internet Explorer 8下断开(假设subject = window.external)

// Gather the property names into the keys array.
var keys = Array(); for( var i in subject ){ keys.push(i); }

/* After this I sort the keys, then loop through to get the 
   property values in subject
*/

如果您尝试将主题打印到控制台(或警报),则会显示空白。但是,其他对象将打印[object SomethingMeaningful]。

Microsoft的文档表明该对象肯定具有属性。能够展示它们而不是仅仅跳过它们会很高兴。任何想法?

1 个答案:

答案 0 :(得分:1)

你是说这个吗?

var keys = Array(); for( var i in subject ){ keys.push(subject[i]); }

您可以使用JavaScript中的数组类似语法访问对象属性

修改

感谢您的编辑。我不确定为什么这对window.external对象不起作用。它可能只有方法,没有属性。它是否在其他浏览器下工作,例如Firefox?