day96-ES6-类机制

前言

类机制核心-关键字-class表示一个块-定义一个函数原型的成员。

ES6中增加了语法糖extends和super。extends 用来在两个函数原型之间建立[[Prototype]]委托链接,即所谓的“原型继承”


extends和super

注意super不同位置起的作用。

class Foo {
constructor(a, b) {
this.x = a
this.y = b
}
gXYZ () {
return this.x * this.y
}
}
// 把Bar.prototype的[[Prototype]]连接到Foo.prototype
class Bar extends Foo {
constructor(a, b , c) {
// super具体指Foo
super(a, b)
this.z = c
}
gXYZ () {
// super具体指Foo.prototype
return super.gXYZ() * this.z
}
}
let b = new Bar(5, 1, 4)
console.log(b.x) // 5
console.log(b.y) // 1
console.log(b.z) // 4
console.log(b.gXYZ()) // 20
文章作者: lmislm
文章链接: http://lmislm.com/2019/04/18/2019-04-18/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LMISLMのBlog