簡體   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