Javascript,一个通用的实现类继承的函数-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

Javascript,一个通用的实现类继承的函数

2016-06-01 12:59:59 1868 1
 var A = function() {
    this.a = 3;
}
var B = function() {
    this.b = 6;
}

function ext(A, B) {
    var subclass = B;
    //構造一個新的同名類類,用他來繼承父類,並且調用子類都構造函數
    var B = function() {
        A.apply(this.arguments);
        subclass.apply(this.arguments);
    }
    B.prototype = Object.create(new A);
    B.constructor = subclass;
    return B;
}

B = ext(A, B);
var b = new B();
console.log(b.b);

上面的代码,是想写一个通用的函数,用来实现继承
结果console中打印出来是undefined,错在哪里?

取消 提交回答
全部回答(1)
  • 小旋风柴进
    2019-07-17 19:23:06
     function ext(A, B) {
            var subclass = B;
            //構造一個新的同名類類,用他來繼承父類,並且調用子類都構造函數
            var B = function () {
                A.apply(this);
                subclass.apply(this);
            }
                    //不需要了
            //B.prototype = Object.create(new A);
            //B.constructor = subclass;///
           // console.log(B)
            return B;
        }

    你传this.arguments干嘛。。肯定是apply修改A和subclass指向B的实例对象了,而且修改构造函数也不是你B.constructor = subclass就能修改的,更改不了

    0 0
相关问答

12

回答

在阿里云上安装和运行Node.js全功略

ycwong 2013-09-18 15:17:30 66995浏览量 回答数 12

19

回答

【分享】如何提高网站的打开速度?

enj0y 2012-11-17 14:35:22 58066浏览量 回答数 19

145

回答

【新手入门】云服务器linux使用手册

fanyue88888 2012-11-26 17:14:18 160101浏览量 回答数 145

28

回答

钉钉开放平台“常见问题常见问题常见问题“重要请关注

竹梅 2015-12-03 00:39:14 96758浏览量 回答数 28

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 149071浏览量 回答数 22

31

回答

[@倚贤][¥20]刚学完html/css/js的新手学习servlet、jsp需要注意哪些问题?

弗洛伊德6 2018-10-27 21:52:43 148270浏览量 回答数 31

23

回答

【云服务器分享】网站访问速度快才是硬道理

dreamdoo 2012-10-15 10:15:02 86608浏览量 回答数 23

251

回答

阿里云LNAMP(Linux + Nginx + Apache + MySQL + PHP)环境一键安装脚本

云代维 2014-02-14 15:26:06 310539浏览量 回答数 251

13

回答

【云服务器分享】如何节省网站流量

dreamdoo 2012-10-15 10:36:09 81863浏览量 回答数 13

15

回答

对象存储oss【问答合集】

我是管理员 2018-08-03 14:54:02 69722浏览量 回答数 15
2710
文章
6591
问答
问答排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载