constructor 方法是class类中,实例化对象的时候 第一步立即执行的函数
class Person{
constructor() {
console.log(11111)
}
}
let per1 = new Person()
let per2 = new Person()
每次实例化一次类,都会调用一次constructor方法:
构造函数可以过传参类动态创建不同的对象
构造函数中的this
构造函数中的this表示当前实例化的class 类对象
class Person{
name: string
age:number
constructor() {
this.name = '猴子'
this.age = 20
this.getData()
//此时的this 指向当前这个对象,这个对象拥有这写属性,可以用过this调用
}
getData() {
console.log(this.name,this.age) //"猴子",20
}
}
let per1 = new Person()
构造函数的参数(可以实现给类传参):
构造函数的参数就是实例化的时候 传递进去的参数,可以用通过传递不同的参数定义不同对象的属性和方法
每次实例化的时候就得到不同的对象数据:
class Person{
name: string
age:number
constructor(name:string,age:number) {
this.name = name
this.age = age
this.getData()
}
getData() {
console.log(this.name,this.age)
}
}
let per1 = new Person('猴子', 20) //'猴子', 20
let per2 = new Person('老虎',30) //'老虎',30
let per3 = new Person('狮子',40) //'老虎',30
//由于实例化了三次类,里面有调用到getData方法,所以这里会执行三次