注冊成功
X
W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
ECMAScript 的嚴格模式
嚴格模式下的限制說明
- 在嚴格模式下的代碼中,"implements", "interface", "let", "package", "private", "protected", "public", "static", 和 "yield" 都被作為未來可能會使用到的保留字(7.6.12)。
- 符合規(guī)范的實現(xiàn)中,當處理嚴格模式下的代碼時,不應該像 B.1.1 中描述地那樣將 OctalIntegerLiteral 擴展到 NumericLiteral(7.8.3)的語法中。
- 符合規(guī)范的實現(xiàn)中,當處理嚴格模式下的代碼時,不應該像 B.1.2 中描述地那樣將 OctalEscapeSequence 擴展到 EscapeSequence 的語法中。
- 無法注冊一個未定義的標識符或者其他無法解析的引用到全局對象下。當在嚴格模式下進行一個簡單注冊時,它左部不能解析為一個無法解析的引用。如果是無法解析的,那么就會拋出一個 ReferenceError 異常。左部也不能是一個數(shù)據(jù)屬性的引用,
- eval 或者 arguments 不能出現(xiàn)在一個注冊操作(11.13)或者一個 Postfix 表達式的左部,也不能作為 Prefix Increment(11.4.4)或者 prefix decrement 操作(11.4.5)上面的一元表達式操作。
- 嚴格模式下的 arguments 對象定義了不可配置的存取屬性,包括“caller”和“callee”,如果訪問這兩個對象則會拋出一個類型錯誤。
- 嚴格模式下的 Arguments 對象不會動態(tài)共享它們的數(shù)組索引值,這些索引值包含了函數(shù)綁定時對應格式的參數(shù)。
- 嚴格模式下的函數(shù)中,如果一個參數(shù)對象綁定了作用域內的 arguments 標識符來獲取參數(shù)對象,那么這個參數(shù)對象是不可變的,并在之后也不能進行注冊操作。
- 在嚴格模式下,如果代碼包含了一個含有一個以上任意數(shù)據(jù)屬性的定義,那么這就是一個語法錯誤。
- 在嚴格模式下,如果 eval 或者 argument 出現(xiàn)在屬性參數(shù)列表中,那么這就是一個語法錯誤
以上內容是否對您有幫助:
更多建議: