ES6 的模塊自動採用嚴格模式,嚴格模式主要有以下限制

ES6 的模塊自動採用嚴格模式,不管你有沒有在模塊頭部加上"use strict";。

嚴格模式主要有以下限制。

  • 變量必須聲明後再使用;
  • 函數的參數不能有同名屬性,否則報錯;
  • 不能使用with語句;
  • 不能對只讀屬性賦值,否則報錯;
  • 不能使用前綴0表示八進制數,否則報錯;
  • 不能刪除不可刪除的屬性,否則報錯;
  • 不能刪除變量delete prop,會報錯,只能刪除屬性delete global[prop];
  • eval不會在它的外層作用域引入變量;
  • eval和arguments不能被重新賦值;
  • arguments不會自動反映函數參數的變化;
  • 不能使用arguments.callee;
  • 不能使用arguments.caller;
  • 禁止this指向全局對象;
  • 不能使用fn.caller和fn.arguments獲取函數調用的堆棧;
  • 增加了保留字(比如protected、static和interface)。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章