在 JavaScript 中 use strict

Muhammad Muzammil Hussain 2023年10月12日
  1. JavaScript 中的 use strict
  2. 在 JavaScript 中實現 use strict
  3. 在 JavaScript 中實現 use strict 的優勢
在 JavaScript 中 use strict

本教程將討論 JavaScript 中的 use strict 特性。在這裡,我們將通過不同的示例瞭解如何在 JavaScript 程式碼語句中建立和執行 use strict 關鍵字。

JavaScript 中的 use strict

在 JavaScript 版本 ECMAScript 5 中,嚴格模式是引入的一項新功能,它將幫助我們在嚴格的操作上下文中執行一組程式及其功能。我們 use strict 的上下文來限制執行各種操作並丟擲更多異常。

我們通過語句 use strict 指示瀏覽器 use strict 模式。它是 JavaScript 的最小且更安全的功能集。

在 JavaScript 中實現 use strict

請記住,我們不能對用大括號括起來的塊語句 use strict 模式。下面提到了兩種 use strict 模式的方法:

  1. 我們可以在整個指令碼的全域性範圍內使用它。
  2. 我們可以在個別功能中使用它。

在 JavaScript 中為整個指令碼實現 use strict

在任何其他語句之前,我們將確切的語句 use strict 用於為整個指令碼呼叫嚴格模式。

語法:

// strict mode syntax for Whole-script
'use strict';
let a = 'script for strict mode!';

為 JavaScript 中的單個函式實現 use strict

在函式體中,在任何其他語句之前,我們將確切的語句 use strict 用於呼叫函式的嚴格模式。

語法:

function strictFunction() {
  // strict mode syntax for Function
  'use strict';
  function nestedFunction() {
    return 'Javascript on DelftStack';
  }
  return 'strict mode functions!  ' + nestedFunction();
}
function notStrictFunction() {
  return 'non strict function';
}

嚴格模式示例

眾所周知,錯誤輸入變數名會在普通 JavaScript 中建立一個新的全域性變數。在嚴格模式下,它會丟擲一個錯誤。

例子:

<!DOCTYPE html>
<html>
<body>
    <p>function will cause errors while using `use strict` in that function.</p>
    <p>To see the error reprt just activate debugging in your browser by pressing (F12).</p>
    <script>
        a = 10;    // This will not cause an error.
        myFunction();
        function myFunction() {
            "use strict";
            b = 10;  // This will cause an error (b is not defined).
        }
    </script>
</body>
</html>

我們在這個 HTML 頁面原始碼中定義了 <script> 標記以使用 JavaScript 程式碼語句。在 <script> 標籤內,我們簡單地用數值 10 初始化未定義變數 a 並呼叫 myFunction()

之後,我們使用 use strict 關鍵字建立了 myFunction() 的宣告。我們還用數值 10 初始化了未定義的變數 b,以在 use strict 模式下測試執行。

你可以使用 .html 副檔名儲存給定的 HTML 示例,並在任何瀏覽器中開啟它以檢查輸出。你需要啟用瀏覽器的除錯模式,只需按 F12 即可檢視錯誤報告。

輸出:

the function will cause errors while using `use strict`.

To see the error report, activate debugging in your browser by pressing (F12).

在 JavaScript 中實現 use strict 的優勢

在簡單的 JavaScript 語義中,嚴格模式進行了各種更改。我們可以通過 use strict 模式將它們更改為丟擲錯誤來消除 JavaScript 的一些靜默錯誤。

  • 為了執行優化,我們可以修復使 JavaScript 引擎難以處理的錯誤。
  • 嚴格模式的程式碼有時可以比普通程式碼執行得更快,這是嚴格模式所沒有的。
  • 在 ECMAScript 的未來版本中,嚴格模式會阻止某些可能被定義的語法。
  • 嚴格模式可防止任何不安全的操作,例如嘗試訪問全域性變數或物件。
  • 嚴格模式禁用令人困惑的功能或考慮不周的功能。
  • 為了更有效地編寫安全的 JavaScript,我們使用嚴格模式。

相關文章 - JavaScript Keyword