日期:2014-05-16  浏览次数:20370 次

@_@ 关于 Object 与 Function 原型的困惑???[高手请进 >>]
本想写个例子弄清   JS   内建对象间的调用关系,

可是却被   Object   与   Function   原型间的关系搞得头大了,

代码如下,请高人指点迷津!

    <script   language= "JavaScript ">
    <!--

Object.lookMe   =   function()   {
        alert( "@_@   Object ");
}
Object.prototype.showMe   =   function()   {
        alert( "Object ");
}

Function.lookMe   =   function()   {
        alert( "@_@   Function ");
}
Function.prototype.showMe   =   function()   {
        alert( "Function ");
}

for   (var   o   in   Function)
{
        Function[o]();
}
//   Function   ——   问题1:为什么   Function   实例方法   showMe   可枚举?
//   @_@   Function

for   (var   o   in   Object)
{
        Object[o]();
}
//   Function   ——   问题2:Object   的实例方法   showMe   未被可枚举是合理的,但是为什么又枚举了   Function   实例方法   showMe   ?
//   @_@   Object

    //-->
    </script>

------解决方案--------------------
你用 prototype 给它添加了一个方法, 它当然可以枚举了
------解决方案--------------------
具体参考:http://cz9908.cn/blog/article.asp?id=239
------解决方案--------------------
alert(typeof Function);
alert(typeof Object);

得出一个更有意思的答案
------解决方案--------------------
昂,并且
Object.prototype.showMe = function() {
alert( "Object ");
};
也被Function继承了,但是。又被。
Function.prototype.showMe = function() {
alert( "Function ");
};
给盖了。。
飘走的说。