不允许使用 with
所有变量必须申明, 赋值给未申明的变量报错, 而不是隐式创建全局变量
eval 中的代码不能创建 eval 所在作用域下的变量函数而是为 eval 单独创建一个作用域, 并在 eval 返回时丢弃
函数中的特殊对象 arguments 是静态副本, 而不像非严格模式那样, 修改 arguments 或修改参数变量会相互影响
删除 configurable=false 的属性时报错, 而不是忽略
禁止八进制变量, 如 010(八进制的 8)
evalarguments 变为关键字, 不可作为函数名变量名等
一般函数调用时 (不是对象的方法调用, 也不使用 apply/call/bind 等修改 this)this 指向 null, 而不是全局对象
若使用 apply/call, 当传入 null 或 underfind 时, this 将指向 ull 或 underfind, 而不是全局对象
试图修改不可写属性 (writable=false), 在不可扩展的对象上添加属性时报 TypeError, 而不是忽略
arguments.caller,arguments.callee 被禁用
来源: http://www.qdfuns.com/note/22516/918ba0454060e238512420583cadc55d.html