除了提供正常模式外,JavaScript还提供了严格的模式。ES5的严格模式是一种使用受限制的JavaScript变体的方法,即在严格条件下运行JS代码。STRICT模式将在IE10及以上的浏览器上支持,浏览器的旧版本将被忽略。
严格的模式更改为正常的JavaScript语义:
严格的模式可以应用于整个脚本或单个功能。因此,严格模式可以分为两种情况:严格的模式以打开严格模式并将严格模式打开到函数。
将其放在第一行中,整个脚本都严格运行。如果不在第一行,它将无效。当合并不同模式的代码文件时,需要特别注意。一些脚本脚本是严格的模式,某些脚本是正常模式。这不利于文件合并,可以将整个脚本文件放在立即执行的匿名函数中。创建独立范围而不会影响其他脚本文件。
要打开一个严格的模式,您需要放置“严格”;(或“使用严格”;)在功能主体的所有陈述面前声明。
(1)禁止陈述
(2)创建评估范围
严格的模式创建了额外的范围。在正常模式下,评估范围取决于其全局范围或函数范围。在严格的模式下,评估语句本身是一个范围,它不再由全局变量生成。生成的变量只能用于评估。
(1)禁止这被禁止指向全局对象(计时器的此仍指向窗口)
(2)禁止在功能中遍历呼叫堆栈
6.更多...对象中的重命名属性,函数参数中的重复参数,禁止八角形语句,并且不允许分配参数的值。参数不再跟踪参数的更改。保留单词
更严格的模式要求参考
原始:https://juejin.cn/post/709559336917742623