Function.prototype.method = function(name,func){ this.prototype[name] = func; return this; };
this.prototype[name]这句是啥意思?没弄明白。
呵呵,这个举个小例子你就可以看出来了
var a = function() { console.log(1); } var b = function() { console.log(2); } a.method('b', b); var c = new a(); c.b();
Function.prototype.method = function(name,func){ this.prototype[name] = func; return this; }; function Fun(){ } var Func = Fun.method('getValue',function(value){ return 'this is value:'+value; }); print(new Func().getValue(8));//this is value:8
解释一下:
往原型(链)上添加方法
明白了,this.prototype[name]应该这么看:1、this.prototype;2、[name] 谢谢你~
“作用是在调用method方法的对象上添加了‘name’属性”这句很受启发。
谢谢你~
@leolovenodejs 稍微有点不准确,其实是:在构造函数对象原型(prototype)上添加了’name’属性,这个属性被这个构造函数的所有实例共享(能通过链查找到).
@sumory 嗯
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
呵呵,这个举个小例子你就可以看出来了
解释一下:
往原型(链)上添加方法
明白了,this.prototype[name]应该这么看:1、this.prototype;2、[name] 谢谢你~
“作用是在调用method方法的对象上添加了‘name’属性”这句很受启发。
谢谢你~
谢谢你~
@leolovenodejs 稍微有点不准确,其实是:在构造函数对象原型(prototype)上添加了’name’属性,这个属性被这个构造函数的所有实例共享(能通过链查找到).
@sumory 嗯