JavaScript学习(二)类

JavaScript学习(二)类

JavaScript中的类是语法糖,一种基于原型的继承的语法糖。

类的创建

  class Star {
      constructor(uname, age) {
        this.uname = uname
        this.age = age
      }
      sing(sing) {
        console.log(sing);
      }
    }

类的继承

class Father {
            constructor(x, y) {
                this.x = x
                this.y = y
            }
            sum() {
                console.log(this.x + this.y);
            }
        }
        class Son extends Father {
            constructor(x, y) {
                super(x, y)
            }

        }
        let son = new Son(1, 2)
        son.sum()    //  3

 

借助父构造函数继承属性

        function Father(uname, age) {
            this.uname = uname
            this.age = age
        }
        Father.prototype.money = function () {
            console.log("100000");
        }

        function Son(uname, age, score) {
            Father.call(this, uname, age)
            this.score = score
        }
        // Son.prototype = Father.prototype
        Son.prototype = new Father() // Son的原型对象指向Father的实例化对象
        Son.prototype.constructor = Son // 需要重新指向Son构造函数
        Son.prototype.exam = function () {
            console.log("孩子要考试");
        }
        let son = new Son("刘德华", 18, 88)
        console.log(son);
        console.log(Father.prototype);
        console.log(Son.prototype.constructor);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值