sinat_zjflynat 2017-02-27 16:47 采纳率: 0%
浏览 1013

javascript的抽象方法的继承

Object.prototype.extend = function(object) {
console.log(this);
console.log(object);
return Object.extend.apply(this, [this, object]);
}

Object.prototype.as = function(){
console.log("a");
}

Object.extend = function(destination, source){
console.log(source); // output:{ add: [Function: add], show: [Function: show] }
console.log(this);
for(property in source){
console.log(property); // Why there is a new property: extend???
destination[property] = source[property];
console.log(destination[property]);
}
console.log(destination);
return destination;
}

/*ShapeBase.prototype = {
show:function(){
console.log("ShapeBase show");
}
initialize:function(){
this.oninit();
}
}*/

function ShapeBase(){
//console.log(this);
this.show = function(){
console.log("ShapeBase show");
};
this.init = function(){
console.log("ShapeBase init");
};
}

function Rect(){}

//子类Rect
Rect.prototype = (new ShapeBase()).extend({
// 添加新方法
add:function(){
console.log("Rect add");
},
// 重写show方法而不改变父类方法
show:function(){
console.log("Rect show");
}
})

  • 写回答

2条回答 默认 最新

  • 战在春秋 2017-02-27 23:03
    关注

    那么你的问题是什么呢?

    评论

报告相同问题?

悬赏问题

  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?
  • ¥30 数字电源对DSP芯片的具体要求
  • ¥20 antv g6 折线边如何变为钝角
  • ¥30 如何在Matlab或Python中 设置饼图的高度
  • ¥15 nginx中的CORS策略应该如何配置
  • ¥30 信号与系统实验:采样定理分析