//ES5中
function Person(){ //实例方法
this.run1 = function(){}
}
Person.run2 = function(){ //静态方法
}
var p = new Person() //实例方法
Person.run2() //静态方法调用
//TS中
class Person{
public name:string;
static sex = '男' //静态属性
constructor(name:string){
this.name=name;
}
run(){ //实例方法
console.log(`${this.name}在运动`)
}
work(){
console.log(`${this.name}在工作`)
}
static prin(){ //静态方法
console.log(`静态方法`) //注意这里无法直接使用方法中this.name,sex可以调用Person.sex
}
}
var p = new Person('梁豆豆')
p.run() //实例方法调用
Person.prin() //静态方法调用
TS中类 静态属性 静态方法
最新推荐文章于 2023-11-20 08:27:34 发布
本文探讨了ES5和TypeScript中实例方法与静态方法的定义和使用。在ES5中,实例方法通过`this`关键字在构造函数内部定义,而静态方法则直接在构造函数上定义。在TypeScript中,类的静态属性和方法可以通过`static`关键字声明。实例方法通常与对象实例相关联,而静态方法则属于类本身,可以直接通过类名调用,不依赖于实例。
3076

被折叠的 条评论
为什么被折叠?



