class
在ES6中,引入了类(class)的概念,使得定义一个构造函数可以变得更简单、快捷。
将要点给大家做一个总结:
1. 在ES6中,类的构造方法,对应了ES5中的构造函数。
2. 其次,类的所有方法,都定义在了类名的prototype属性上面。
3. Object.assign方法可以很方便地一次向类添加多个方法。
4. 类的内部所有定义的方法,都是不可枚举的(non-enumerable)。这一点与ES5的行为不一致。
5. 一个类必须有constructor方法,如果没有显式定义,一个空的constructor方***被默认添加。constructor方法默认返回实例对象(即this),完全可以指定返回另外一个对象。
6. 类的构造函数,不使用new是没法调用的,会报错。
7. 可以通过实例的__proto__属性为Class添加方法。
//定义类
class Point {
___constructor(x, y) {
______this.x = x;
______this.y = y;
___}
___toString() {
______return '(' + this.x + ', ' + this.y + ')';
___}
}
// 等同于
Point.prototype = {
___toString(){},
};
想稍微进一步了解具体的用法,可以参考:【JS CLass类 - 天天web学习 - 博客园】https://www.cnblogs.com/zcl997136048/p/9283687.html