2020-02-03
概述
ECMAScript 5的严格模式(strict mode)是采用具有限制性JavaScript变体的一种方式,使代码区别于正常模式(或非严格模式)(sloppy mode),形成与正常代码不同的语义。
意义
设立"严格模式"的目的,主要有以下几个:
- 严格模式通过抛出错误来消除了一些原有静默错误。
- 严格模式修复了一些导致 JavaScript引擎难以执行优化的缺陷:有时候,相同的代码,严格模式可以比非严格模式下运行得更快。
- 严格模式禁用了在ECMAScript的未来版本中可能会定义的一些语法, 为未来新版本的Javascript做好铺垫。
启用标识
"use strict"(或'use strict')
严格模式有效作用域
严格模式可以应用到整个脚本的全局范围内或函数中,在封闭大括弧 {} 内启用严格模式是无效的。
// 在封闭大括弧 {} 内启用严格模式是无效的
{
'use strict'
// some code here
}
调用严格模式
为脚本开启严格模式
为整个脚本文件开启严格模式,需要在所有代码语句前启用标识。严格地说,只要前面不是产生实际运行结果的语句,"use strict"可以不在第一行,比如直接跟在一个空的分号后面。
// 整