繁体   English   中英

JavaScript 中的静态与函数

[英]Static vs. function in JavaScript

谁能解释为什么这是正确的:

class Solution{
  static main() {
    console.log("Hello World!");
  }  
}

为什么这正确?

class Solution{
  function main() {
    console.log("Hello World!");
  }  
}

我认为你总是必须用function关键字定义一个函数。

无论如何, class是语法糖:

function Solution() {}

Solution.main = function () { ... };

当他们创建class语法糖以更容易编写这种结构时,他们还决定省略对 type function的要求,因为很明显main() { ... }是这种上下文中的函数定义,即使没有function关键字。 没有什么额外的“ function ”会增加这里的含义,那么为什么要输入它呢?

静态类方法不是在类的实例上调用,而是在类本身上调用。 MDN很好地解释了这一点。 至于第二部分,这就是class语法的工作原理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM