JavaScript 背後的工作原理是什麼?


JavaScript 是一種相對較新的語言,與傳統的HTML & CSS 管道相比,它具有許多新特性和增強功能。在新時代,JavaScript 在相對較短的時間內佔據了大部分前端市場。它獲得了巨大的普及,並且是任何前端需求的首選語言。

在本文中,我們將探討傳統的 JavaScript 如何在前端模板中工作。它如何處理元素以及如何執行它們?

JavaScript 是一種同步的單執行緒語言,具有特定的執行順序。

JavaScript 函式內部的所有內容都在執行上下文中執行。

執行上下文主要由兩部分組成:

  • 記憶體(即環境變數),其中包含所有變數和函式來儲存鍵和值;以及

  • 另一部分由元件(執行執行緒)組成,它一次執行一行程式碼。

執行 JavaScript 函式或每當事件命中 JS 函式時,它都會開啟一個執行上下文執行緒。

示例

在下面的示例中,我們將檢視下面的指令碼並檢查函式如何逐行執行。我們將執行下面的函式並瞭解每個函式是如何執行的。

#檔名: script.js

<script>
   var m = 3;
   var n = 2;
   function sum(num1, num2) {
      var ans = num1 + num2;
      return ans;
   }
   var sumOfNos = sum(m, n);
</script>

執行上述程式碼時,JavaScript 將建立一個執行執行緒上下文。此執行緒上下文將基本上將所需的 環境變數載入到記憶體中。

例如 - 在上面的函式中,變數 m、n 將載入到記憶體中,並在函式需要時使用。

遇到第一行時,它將這些變數儲存到記憶體中的保留記憶體中。

從上面的示例中,它將 m、n 和 sumOfNo 的值儲存在記憶體中。由於它只是保留空間,因此所有變數的預設值都將保留為 undefined。請參考下圖以更好地理解。

為所有變數和函式分配記憶體後,實際程式碼執行開始。此執行程式碼放置在元件內部,程式碼逐行執行。

如上述程式碼所示,我們首先將值初始化到記憶體中,即 m=3 & n=2

一旦值被初始化,sum() 函式就會被呼叫,它接收兩個輸入並返回這兩個數字的和。所有這些都在執行上下文中發生。它包含兩部分:記憶體和用於程式碼執行的元件階段。

一旦為所有函式和元件分配了記憶體,實際程式碼執行就使用實際值進行。

在下圖中,我們可以清楚地看到值已初始化,程式碼執行使用程式碼中的實際值進行。

最後,當遇到 return 時,此值將返回到呼叫該函式的程式的實際控制。

控制將返回答案,此答案將由實際呼叫此函式的使用者使用。

因此,JavaScript 程式碼的完整執行就是這樣在後臺進行的。

更新於:2022年4月22日

462 次檢視

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告