JavaScript - 静态方法

JavaScript - 静态方法 首页 / JavaScript入门教程 / JavaScript - 静态方法

JavaScript提供了属于该类的静态方法,而不是该类的实例。因此,不需要实例来调用静态方法。这些方法直接在类本身上调用。

要点

  • static关键字用于声明静态方法。
  • 静态方法可以是任何名称。
  • 一个类可以包含多个静态方法。
  • 如果声明多个具有相似名称的静态方法,则JavaScript始终会调用最后一个。
  • 可以使用静态方法来创建实用程序函数。
  • 可以使用此关键字在另一个静态方法中调用一个静态方法。
  • 不能直接使用此关键字在非静态方法中调用静态方法。在这种情况下,可以使用类名或作为构造函数的属性来调用静态方法。

示例1

看一个简单的静态方法示例。

<script>
class Test
{
  static display()
  {
    return "static method is invoked"
  }
}
document.writeln(Test.display());
</script>

输出:

static method is invoked

例子2

Le看到了一个调用多个静态方法的示例。

<script>
class Test
{
  static display1()
  {
    return "static method is invoked"
  }
  static display2()
  {
    return "static method is invoked again"
  }
}
document.writeln(Test.display1()+"<br>");
document.writeln(Test.display2());
</script>

输出:

static method is invoked
static method is invoked again

例子3

让无涯教程看一个示例,该示例调用多个具有相似名称的静态方法。

<script>
class Test
{
  static display()
  {
    return "static method is invoked"
  }
  static display()
  {
    return "static method is invoked again"
  }
}
document.writeln(Test.display());
</script>

输出:

static method is invoked again

例子4

看一个在构造函数中调用静态方法的示例。

链接:https://www.learnfk.comhttps://www.learnfk.com/javascript/javascript-oops-static-method.html

来源:LearnFk无涯教程网

<script>
class Test {
  constructor() {
  document.writeln(Test.display()+"<br>"); 
  document.writeln(this.constructor.display()); 
  }

  static display() {
      return "static method is invoked"
  }
}
var t=new Test();
</script>

输出:

static method is invoked
static method is invoked 

例子5

看一个在非静态方法中调用静态方法的示例。

<script>
class Test {
  static display() {
      return "static method is invoked"
  }
  
 show() {
  document.writeln(Test.display()+"<br>"); 
  }  
}
var t=new Test();
t.show();
</script>

输出:

static method is invoked

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

赵成的运维体系管理课 -〔赵成〕

推荐系统三十六式 -〔刑无刀〕

微服务架构实战160讲 -〔杨波〕

重学前端 -〔程劭非(winter)〕

如何看懂一幅画 -〔罗桂霞〕

说透区块链 -〔自游〕

零基础实战机器学习 -〔黄佳〕

快速上手C++数据结构与算法 -〔王健伟〕

AI 应用实战课 -〔黄佳〕

好记忆不如烂笔头。留下您的足迹吧 :)