我正在阅读一本书,并按照显示的示例进行操作。我被困在这里。这是本书中示例的副本。
这怎么行不通-我认为问题出在“ Change klass的原型”上。
我得到的错误是“呼吸不是一种功能”
有人可以向我解释如何以及为什么吗?非常感谢。
(function() {
var Class = function(parent){
var klass = function(){
this.init.apply(this, arguments);
};
// Change klass's prototype
if (parent) {
var subclass = function() { };
subclass.prototype = parent.prototype;
klass.prototype = new subclass;
};
klass.prototype.init = function(){};
// Shortcuts
klass.fn = klass.prototype;
klass.fn._class = klass;
klass._super = klass.__proto__;
// Adding instance properties
klass.include = function(obj) {
var included = obj.included; // Callback
for (var i in obj) {
klass[i] = obj[i];
}
if (included) included(klass)
};
return klass;
};
var Animal = new Class;
Animal.include({
breath: function() {
console.log("breath");
}
});
var Cat = new Class(Animal);
// Cat inherits from Animal
var tommy = new Cat;
tommy.breath();
})();