2017年8月19日 星期六

[Javascript] "use strict"

  • ECMASScript 5 (JavaScript 1.8.5) 定義 Strict 模式
    • 使用 "use strict",需再 script 的第一行使用
      • 區域
    
    function foo() {
        "use strict";
         // 這裡程式碼使用 strict 模式
    
        function bar() {
         // 這裡程式碼使用 strict 模式
    
        }
    }
    
    // 這裡程式碼不使用 strict 模式
    
      • 全域
    
    "use strict";
    
    function foo() {
        
        // 這裡程式碼使用 strict 模式
    
        function bar() {
            // 這裡程式碼使用 strict 模式
    
        }
    }
    
    // 這裡程式碼使用 strict 模式
    
    • 解析與執行 Javascript,避免一些在 ECMASScript 舊版遇到的一些錯誤
    • 修復 JavaScript 難以執行優化的錯誤;有時候 strict 模式可以比 strict 模式的相同程式碼運行更快
    •  strict 模式的限制會讓程式碼依據一組較為安全的規則
      • CASE 1
    
    // use strict 建議寫在第一行
    "use strict"; 
    function foo() {
        // 1. 少了 var 
        // 2. 拼寫錯誤轉成異常
        // 產生 ReferenceError
        a = 1; 
    }
      • CASE 2 (補)
  • Strict mode is supported in:
    • IE from version 10. 
    • Firefox from version 4.
    • Chrome from version 13. 
    • Safari from version 5.1.
    • Opera from version 12.
  • REF

沒有留言:

張貼留言