JavaScript Class static 关键词
实例
创建一个静态方法并在类上调用它:
<!DOCTYPE html><html><body><h2>JavaScript Class Static 方法</h2><p>static 方法是使用 “static” 关键字创建的,您只能在类本身上调用该方法。</p><p id="demo"><script>class Car {constructor(brand) {this.carname = brand;}static hello() { // static 方法return "Hello!!";}}mycar = new Car("Tesla");//对 Car 类调用 'hello()':document.getElementById("demo").innerHTML = Car.hello();//而非 'mycar' 对象://document.getElementById("demo").innerHTML = mycar.hello();//此举会引发错误。</script></body></html>
定义和用法
static 关键字为类定义静态方法。
静态方法直接在类上(上例中为 Car)调用,而无需创建类的实例/对象(mycar)。
浏览器支持
| Keyword | |||||
|---|---|---|---|---|---|
| static | 49.0 | 13.0 | 45.0 | 9.0 | 36.0 |
语法
static methodName()
技术细节
| JavaScript 版本: | ECMAScript 2015 (ES6) |
|---|
更多实例
如果要在静态方法内使用 mycar 对象,那么您可以将其作为参数发送:
实例
<!DOCTYPE html><html><body><h2>JavaScript Class Static 方法</h2><p>如需在 static 方法中使用 “mycar” 对象,您可以将其作为参数发送。</p><p id="demo"><script>class Car {constructor(brand) {this.carname = brand;}static hello(x) {return "Hello " + x.carname;}}mycar = new Car("Tesla");document.getElementById("demo").innerHTML = Car.hello(mycar);</script></body></html>