ES6 Class 类介绍和使用
基本语法
class Point {
constructor(x, y) {
this.x = x;
this.y = y;
}
toString() {
return '(' + this.x + ', ' + this.y + ')';
}
}
typeof Point // "function"
Point === Point.prototype.constructor // true
注意:constructor
方法,这就是构造方法,而 this
关键字则代表实例对象。类的数据类型就是函数,类本身就指向构造函数 ,类的所有方法都定义在类的 prototype
属性上面,类的内部所有定义的方法,都是不可枚举的(non-enumerable)。
在类的实例上面调用方法,其实就是调用原型上的方法
b.constructor === B.prototype.constructor
class Point {
constructor() {
// ...
}
toString() {
// ...
}
toValue() {
// ...
}
}
// 等同于
Point.prototype = {
constructor() {},
toString() {},
toValue() {},
};
class B {}
let b = new B();
b.constructor === B.prototype.constructor // true
constructor 方法
constructor 方法是类的默认方法,通过 new 命令生成对象实例时,自动调用该方法。一个类必须有 constructor 方法,如果没有显式定义,一个空的 constructor 方法会被默认添加
constructor 方法默认返回实例对象(即 this),完全可以指定返回另外一个对象(指向隔壁老王
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: ES6 中的 Async 函数
下一篇: 彻底找到 Tomcat 启动速度慢的元凶
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论