严格模式是什么
严格模式是JavaScript中的一种限制性更强的变种方式。严格模式不是一个子集:它在语义上与正常代码有着明显的差异。
不支持严格模式的刘览器与支持严格模式的浏览器行为上也不一样,所以不要在未经严格模式特性测试情况下使用严格模式。
严格模式可以与非严格模式共存,所以脚本可以逐渐的选择性加入严格模式。
目的
首先,严格模式会将JavaScript陷阱直接变成明显的错误。
其次,严格模式修正了一些引擎难以优化的错误:同样的代码有些时候严格模式会比非严格模式下更快。
第三,严格模式禁用了一些有可能在未来版本中定义的语法。
在变量中的严格模式
开启严格模式
在JavaScript中想要开启严格模式,需要在所有代码之前,定义一个不会赋给任何变量的字符串:
"use strict";//或者'use strict';
如果之前的JavaScript代码是非严格模式的话,建议还要盲目为这段代码开启严格模式,这样可能会出现问题。建议按一个个函数去开启严格模式(至少在学习的过渡期要这样做)。
function fn(){
// 开启严格模式 - 局部作用域
'use strict';
var a =