如何获取对象名称?

Bla*_*ack 0 javascript

是否可以在javascript中输出对象的名称?在下面的脚本中,我将window对象传递给函数并输出属性.

var Output = "";

function OutputAttributes(pObject)
{
    var x = "";

    for (var Attribute in pObject)
    {
        x = x + "<li>"+pObject+"." + Attribute + ": " + pObject[Attribute] + "</li>";
    }
    return x;
}

Output = OutputAttributes(window);

document.write("<h2>Attributes from Objekt <i> <\/i><\/h2>");
document.write("<ol>"+Output+"</ol>");
Run Code Online (Sandbox Code Playgroud)

如果我执行上面的代码,那么我会收到如下输出:

[object Window].close: function close() { [native code] } 
[object Window].stop: function stop() { [native code] } 
[object Window].focus:function focus() { [native code] }
Run Code Online (Sandbox Code Playgroud)

但我期待这样的事情:

window.focus:function focus() { [native code] }
Run Code Online (Sandbox Code Playgroud)

voi*_*oid 5

这在JavaScript中是不可能的,因为这种语言中的参数是通过值或引用传递的,而不是通过名称传递的,因此当变量传递给function时,其名称将丢失.