JavaScript静态方法

声明

该文部分代码和内容节选自菜鸟教程,仅用作个人学习,特此声明

链接https://www.runoob.com/

27.3 JavaScript静态方法

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

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

    class Runoob {
      constructor(name) {
        this.name = name;
      }
      static hello() {
        return "Hello!!";
      }
    }
    let noob = new Runoob("菜鸟教程");
     
    // 可以在类中调用 'hello()' 方法
    document.getElementById("demo").innerHTML = Runoob.hello();
     
    // 不能通过实例化后的对象调用静态方法
    // document.getElementById("demo").innerHTML = noob.hello();
    // 以上代码会报错
    
  • 如果你想在上边例子中的对象 noob 中使用静态方法,可以将对象noob作为一个参数传递给hello方法

    class Runoob {
      constructor(name) {
        this.name = name;
      }
      static hello(x) {
        return "Hello " + x.name;
      }
    }
    let noob = new Runoob("菜鸟教程");
    document.getElementById("demo").innerHTML = Runoob.hello(noob);
    
posted @ 2022-05-05 16:48  无关风月7707  阅读(55)  评论(0编辑  收藏  举报