ES6 class(类)
前言:最近学习react,创建组件用的是class,所以复习记录一下(更新中)。
class基本方法
class Person {
constructor(name) {
this.name = name
this.age = 18
}
sex = '男'
speak() {
console.log(`我是${this.name},性别${this.sex}`)
}
static methods() {
console.log('这是静态方法methods')
}
}
let per = new Person('张三')
per.speak() //我是张三,性别男
per.methods() //per.methods is not a function(静态方法不能在实例上调用)
Person.methods() //这是静态方法methods
class的继承
class Son extends Person {
constructor(name) {
super(name)
}
}
let son = new Son('李四')
// sex: "男", age: 18为继承来的属性;speak为继承来的方法
console.log(son) // Son {sex: "男", name: "李四", age: 18}
son.speak() // 我是李四,性别男
// methods为继承来的私有属性,不能在实例上调用
son.methods() //son.methods is not a function
Son.methods() //这是静态方法methods