class es6的构造函数的另一种写法(语法糖)

构造函数的一般写法:

  // 构造函数
        function Person(){
            this.name="小明"
            this.age=18
            this.say=function(){
                console.log('person 的 say');
            }
        }
        let p1 = new Person()
        console.log(p1.name);
        p1.say()

输出:

class es6的新语法:(就是构造函数的另一种写法)

    // class
        class Person{
            constructor(){
                this.name='张三'
                this.age=12
            }
            say(){
                console.log('我是es6 新写法');
            }
        }

        let p2 = new Person()
        console.log(p2.name);
        p2.say()

输出:

class 继承的方法(extends)

 继承的话 需要在 constructor里面写上 super

  class Teacher extends Person{
            constructor(){
                super()
                this.sex='男',
                this.name='韩梅梅'
            }
        }

        let p3 = new Teacher()
        console.log(p3);
        p3.say()

 输出:

还有一种简单的写法:

   class Teacher extends Person {
            sex = '男'
            name = '韩梅梅'

        }

 省去了constructor和super,但是不影响效果

猜你喜欢

转载自blog.csdn.net/Cat_LIKE_Mouse/article/details/121318206