静态方法和属性属于类本身,通过static定义并直接用类名调用。如MathUtils.add()和Counter.count,不依赖实例,this指向类,适用于工具函数、计数器等场景,提升代码组织性。

JavaScript 中的静态方法和类静态成员属于类本身,而不是类的实例。这意味着你不需要创建类的实例就能调用它们。静态方法通常用于实现与类相关但不依赖于实例数据的功能,比如工具函数或工厂方法。
定义静态方法
使用 static 关键字可以在类中定义静态方法。
class MathUtils {
static add(a, b) {
return a + b;
}
static multiply(a, b) {
return a * b;
}
}
调用静态方法时,直接通过类名调用:
console.log(MathUtils.add(5, 3)); // 输出: 8 console.log(MathUtils.multiply(4, 6)); // 输出: 24
静态属性(类静态成员)
虽然 ES6 没有原生支持静态属性的语法(如 static propertyName),但从 ES2022 开始,可以使用 static 定义静态字段。
[PHP房产程序|BBWPS]功能介绍 1、5种信息类别发布:出租、求租、出售、求购、楼盘信息,支持会员发布信息审核; 2、灵活的信息参数设置; 3、充足的信息字段; 4、简单易用的发布/编辑功能,支持配图上传; 5、灵活的信息管理功能; 6、信息输出伪静态,方便搜索引擎抓取数据; 7、支持RSS输出; 8、内置数据高速缓冲技术,可灵活设置缓冲功能是否启动及过期时间; 9、支持 Google 地图
立即学习“Java免费学习笔记(深入)”;
class Counter {
static count = 0;
static increment() {
this.count++;
}
static getCount() {
return this.count;
}
}
使用方式:
Counter.increment(); Counter.increment(); console.log(Counter.getCount()); // 输出: 2
静态成员的特点
- 不能通过实例访问。例如 new MathUtils().add() 会报错
- 静态方法中的 this 指向类本身,可用于调用其他静态方法
- 适合封装与类逻辑相关但无需实例化的方法,如数据验证、对象创建辅助等
- 常用于工具类、单例模式、缓存管理等场景
基本上就这些。静态方法和静态属性让类可以拥有独立于实例的功能和数据,合理使用能提升代码组织性和性能。









