JavaScript (三十三)——JavaScript 静态方法

JavaScript 静态方法

静态方法是使用 static 关键字修饰的方法,又叫类方法,属于类的,但不属于对象,在实例化对象之前可以通过 类名.方法名 调用静态方法。

静态方法(Static Methods)是定义在类(Class)上而不是其实例上的方法。这意味着,你不需要创建类的实例来调用这些方法;相反,你可以直接通过类本身来调用它们。

静态方法不能在对象上调用,只能在类中调用

示例:

javascript 复制代码
class Person {
  constructor(name) {
    this.name = name;
  }
  static hello() {
    return "Hello!!";
  }
}
 
let person = new Person("示例");
 
// 可以在类中调用 'hello()' 方法
document.getElementById("demo").innerHTML = Person.hello();
 
// 不能通过实例化后的对象调用静态方法
// document.getElementById("demo").innerHTML = person.hello();
// 以上代码会报错

如果你想在对象中使用静态方法,可以作为一个参数传递给它

javascript 复制代码
class Person {
  constructor(name) {
    this.name = name;
  }
  static hello(x) {
    return "Hello " + x.name;
  }
}
let person = new Person("菜鸟教程");
document.getElementById("demo").innerHTML = Person.hello(person);

静态方法的主要优点是它们可以很方便地在不需要实例化对象的情况下被使用,同时它们也有助于保持类的整洁和封装性,特别是当这些方法不需要访问或修改类的实例属性时。

相关推荐
M ? A15 分钟前
Vue 的 scoped 样式穿透 React 不支持?用 VuReact 编译就行
前端·javascript·vue.js·react.js·面试·开源·vureact
zs宝来了16 分钟前
Vue 3 Composition API:响应式系统与依赖追踪
前端·javascript·框架
向往着的青绿色28 分钟前
Java反序列化漏洞(持续更新中)
java·开发语言·计算机网络·安全·web安全·网络安全·网络攻击模型
村上小树30 分钟前
非常简单地学习一下slate.js的原理
前端·javascript
web打印社区33 分钟前
[特殊字符] 开源好物:web-print-pdf,让 Web 打印像调用接口一样简单!
前端·javascript·vue.js·electron
小短腿的代码世界1 小时前
Qt跨进程通信在交易系统中的应用:让策略引擎与风控模块在毫秒级握手
开发语言·qt
zhangrelay1 小时前
三分钟云课实践速通--大学物理--python 版
linux·开发语言·python·学习·ubuntu·lubuntu
MegaDataFlowers1 小时前
调用Service层操作数据
java·开发语言
大家的林语冰1 小时前
TS 登顶第一语言;JS 最新 Temporal 时间减屎;Node 爆发反 AI 运动;CSS 将支持图片亮暗切换《前端周刊》
前端·javascript·css
Hilaku2 小时前
OpenClaw 为什么突然不火了?
前端·javascript·程序员