《JS原理、方法与实践》- 类

ES6发布于2015年6月份,新增了类,模块,箭头函数等,而且新增了13个内置对象:Symble,Map,Set,WeakMap,WeakSet,ArrayBuffer,TypedArray,DataView,GeneratorFunction,Generator,Promise,Reflect,Proxy。
ES2015中最大的改变应该就是启用class关键字,即类的概念。ES本身是基于对象的语言,虽然启用了类的概念,但是依然不是基于类的语言而是基于对象的语言。

class的用法

ES6中使用class的操作除了定义正常的属性、方法外,最重要的就是extends、super以及constructor关键字的使用。
代码示例:

// 定义一个人的类
class Person {
	constructor(sex){
		this.sex = sex;
	}
	
	printSex(){
		console.log(`sex is ${this.sex}`);
	}
}

// 定义一个学生类
class Student extends Person {
	constructor(sex, age){
		super(sex);
		this.age  = age;
	}
	
	printStudentInfo() {
		console.log(`student sex is ${this.sex}, age is ${this.age}`);
	}
}

// 实例化
var stu = new Student(18, 'male');
stu.printSex(); // sex is 18
stu.printStudentInfo(); // student sex is 18, age is male

测试结果
ES中的构造函数是利用constructor来定义的,而不像C#和java,使用与类名同名的函数来定义。

如果觉得文章写得还行,请点个赞。如果想与我进一步交流,可以关注我的公众号或者加我的微信。

个人微信
公众号_前端微说.jpg


版权声明:本文为zhonghua93原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。