枚举JavaScript对象和函数?

枚举JavaScript对象和函数?,javascript,reflection,internet-explorer-9,Javascript,Reflection,Internet Explorer 9,我希望列举各种JavaScript对象的所有可用函数,甚至是用JavaScript创建的HTML元素。例如,以下内容在Chrome和FireFox中都非常有效: <html> <body> <script> var object = document.createElement( "select" ); for( var prop in object ) { docum

我希望列举各种JavaScript对象的所有可用函数,甚至是用JavaScript创建的HTML元素。例如,以下内容在Chrome和FireFox中都非常有效:

<html>
    <body>
    <script>

        var object = document.createElement( "select" );

        for( var prop in object )
        {
            document.body.innerHTML += "" + prop + "; // " + typeof object[prop] + "<br/>";
        }

    </script>
    </body>
</html>
但是,这在IE9中不起作用,您得到的只是字符串/数字/对象属性,而不是任何函数属性

我的问题是如何在运行时发现IE9中的对象导出了哪些函数名

非常感谢

更新:添加doctype可使其按预期工作

<!DOCTYPE html>
    <body>
    <script>

        var object = document.createElement( "select" );

        for( var prop in object )
        {
            document.body.innerHTML += "" + prop + "; // " + typeof object[prop] + "<br/>";
        }

    </script>
    </body>
</html>

var对象=document.createElement(“选择”);
for(对象中的var prop)
{
document.body.innerHTML++=“+prop+”;/“+typeof对象[prop]+”
”; }
我觉得这段代码很好,在IE9中也可以正常工作


如果您指定了一个参数,这在IE中可以正常工作。如果没有
DOCTYPE
,IE将在中呈现,这本质上是IE 5.5的行为,这将极大地影响IE的Javascript支持

<!doctype html>
<html>
    <body>
    <script>

        var object = document.createElement( "select" );

        for( var prop in object )
        {
            document.body.innerHTML += "" + prop + "; // " + typeof object[prop] + "<br/>";
        }

    </script>
    </body>
</html>

啊哈!谢谢,我必须添加才能让它工作,干杯:)可以,需要再等几分钟才能让我工作:)你确定这在ie9上不起作用。。。我为您的代码制作了一个示例,在ie9中运行良好。您面临的问题出现在ie8上
<!doctype html>
<html>
    <body>
    <script>

        var object = document.createElement( "select" );

        for( var prop in object )
        {
            document.body.innerHTML += "" + prop + "; // " + typeof object[prop] + "<br/>";
        }

    </script>
    </body>
</html>
form; // object
length; // number
multiple; // boolean
name; // string
options; // object
selectedIndex; // number
size; // number
type; // string
value; // string
dataFld; // string
dataFormatAs; // string
dataSrc; // string
add; // function
item; // function
namedItem; // function
remove; // function
.
.
.