JS的严格模式:
定义和优点:严格模式是一种特殊的执行模式,它修复了部分语言上的不足(禁用with),提供了更强的错误检查(重复属性,删除delete不可配置的属性等),并增强了安全性(在eval中使用独立作用域等);
模式的使用:
(1)function func(){'use strict';}好处:向上兼容
(2)'use strict'; function func(){}指定整个js内的代码都是在严格模式下
与普通模式的区别:
在严格模式下,①不允许使用with;②不允许未声明的变量被赋值③arguments变为参数的静态副本,不管参数传与不传,对arguments无影响,但是对象的属性除外;④delete参数,函数名报错⑤delete不可配置的属性报错⑥对象字面量重复属性名报错⑦禁止八进制字面量⑧eval,arguments变为关键字,不能作为变量、函数名⑨eval变为独立作用域,其它地方不可以拿到eval的值;