ES6提供了更接近传统语言的写法,引入了Class(类)的概念,作为对象的模板。通过class关键字,可以定义类。
基本上,ES6的class可以看做只是一个语法糖,他的绝大部分功能,ES5都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的写法而已。
说了这么多,那么怎么定义一个类呢?
class People{
age=12;
constructor(a,b){
this.name=a;
this.sex=b;
}
//定义方法
study(){
console.log(this.name+'学习')
}
eat(){
console.log('正在吃饭的人'+this.age+'岁了');
}
}
这样一个类就定义好了,下面我们对他进行实例化
let peo = new People('张三','男');
console.log(peo);
//打印结果为People {age: 12, name: "张三", sex: "男"}
怎么调用类中的方法呢
直接通过peo.方法名就可以了
怎么实现类的继承呢
Class可以通过extends关键字完成继承,这比es5的通过修改原型链实现继承,要清晰和方便很多。
class Childen extends People{
addr='金马路'
}
let child = new Childen('小王','女');
//打印的结果为Childen {age: 12, name: "小王", sex: "女", addr: "金马路"}
这样就完成了继承,是不是比es5的继承要方便很多呢。
本篇就到这里咯,希望对大家能够有所帮助哦,如果本篇有错误,欢迎大家在评论区留言指正,小编看到一定会及时更改。