JavaScript静态方法
声明
该文部分代码和内容节选自菜鸟教程,仅用作个人学习,特此声明
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);