美文网首页
javascript Class

javascript Class

作者: 呗_bei | 来源:发表于2020-07-08 15:07 被阅读0次

旧js定义一种类型需要构造函数和原型对象  构造函数和原型对象是分开的

定义一种类型使用class{}包裹构造函数和原型对象

1.用class{}包裹构造函数和原型方法

2.构造函数名放在class之后作为整个类型的的名字,构造函数名较为constructor

3.所有原型对象方法,无需加类型.prototype前缀,直接放在class内的函数默认为原型对象的共有方法

class Student{

            constructor(sname,sage){

                this.sname = sname;

                this.sage = sage;

}

            //直接在class下写函数默认为类型的原型对象

            intr(){

                console.log(`I'm ${this.sname}`)

}

}

        console.log(lilei);

控制台输出

除写法区别外,原理和旧js完全相同

构造函数与原型对象,原型对象之间不用任何符号隔开

共有属性设置

Student.prototype.共有属性 = “初一二班”

直接在class下写固定属性会有兼容性问题如下:

class Student{

    className = “初二三班”

}chrom内核版本83测试没有问题

继承父类型

制作一个飞机大战游戏

俩种敌机类型拥有很多相同属性

定义父类型class

定义子类型使用关键字entends联系到父类型在constructor中执行super(夫类型的参数)super指代父类型

Extends使用后必须使用super且必须是constructor中第一句话

class 子类型entends 父类型{

        construntor(所有参数){

               super(父类型参数);

        }

}

案例及输出

相关文章