//给原型添加一个method方法 Function.prototype.method = function (name, func) { this.prototype[name] = func; return this; }
//用method方法来创建一个访问父类的方法 Object.method('superior' , function(name){ var that = this, method = that[name]; return function() { return method.apply(that, arguments); }; });
//调用 var coolcat = function (spec) { var that = cat(spec), super_get_name = that.superior('get_name');//这里报错 that.get_name = function (n) { return 'like' + super_get_name() + ' baby'; }; return that; };
var myCoolcat = coolcat({name: 'Bix'}); var name = myCoolcat.get_name();
按道理说没错吧。。我在看JS good parts 那本书的时候按书上敲的,
总是报一个undefined的错误。。apply的方法是原型自带的吧orz