<script text="text/javascript">
Function.prototype.method = function (name,func) {
this.prototype[name] = func;
return this;
}; Number.method('integer',function () {
return Math[this < 0 ? 'floor' : 'random'](this);
}); document.writeln((-10/3).integer());
  </script>
请教:给Function的原型增加了method方法,应该是所有的函数可用,为什么 Number 可以使用? 程序没问题,已经验证

解决方案 »

  1.   

    在内部Number是怎么实现的呢,俺也不太明白
    等高人。
      

  2.   


    alert(typeof Number)因为Number也是function类型~·
      

  3.   

    alert(typeof Number.constructor);解释 Number是基本类型number的包装。
    Number也是function,所以在Function的原型中添加的方法会在所有实例中共享
      

  4.   

    因为
    Number.toString();简单来看的话 可以吧js里面所有的对象 归为 function  和 object 
    可惜 object也是用function Object(){}实现的
      

  5.   

    应该也可以说是继承吧,所有的方法搜继续function 
    特殊的是 object 继承function,function 也继承了object 应该是这个意思  
      

  6.   

    Number也是Function 也是对象
    var a = Number('123');//a 是number
    var a = new Number('123');//a是Object