### 嚴格模式
* 變量必須聲明后再使用
* 函數的參數不能有同名屬性,否則報錯
* 不能使用`with`語句
* 不能對只讀屬性賦值,否則報錯
* 不能使用前綴 0 表示八進制數,否則報錯
* 不能刪除不可刪除的屬性,否則報錯
* 不能刪除變量`delete prop`,會報錯,只能刪除屬性`delete global[prop]`
* `eval`不會在它的外層作用域引入變量
* `eval`和`arguments`不能被重新賦值
* `arguments`不會自動反映函數參數的變化
* 不能使用`arguments.callee`
* 不能使用`arguments.caller`
* 禁止`this`指向全局對象
* 不能使用`fn.caller`和`fn.arguments`獲取函數調用的堆棧
* 增加了保留字(比如`protected`、`static`和`interface`)