JavaScript 严格模式
JavaScript 严格模式
JavaScript 严格模式(Strict Mode)是ECMAScript 5中引入的一种运行时环境,它对JavaScript代码执行进行了一些限制和修改,旨在消除一些常见的问题,提高代码的安全性和可靠性。在严格模式下,JavaScript引擎会以更严格的方式执行代码,从而减少运行时错误,提高代码质量。
严格模式的引入
JavaScript 严格模式最初由Brendan Eich在2009年提出,并在ECMAScript 5规范中正式引入。严格模式通过在脚本或函数声明前添加一个特定的指令来实现,如下所示:
"use strict";一旦启用了严格模式,JavaScript引擎就会开始以严格的方式执行代码。
严格模式的特点
变量声明:在严格模式下,未声明的变量将不会自动提升为全局变量,而是抛出错误。
函数中的this:在严格模式下,函数中的
this将不会指向全局对象,而是undefined。禁止删除不可删除的属性:在严格模式下,尝试删除不可删除的属性(如
Object.prototype)将抛出错误。禁止重复声明变量或函数:在严格模式下,尝试重复声明变量或函数将抛出错误。
禁止函数内部声明函数:在严格模式下,函数内部声明函数将抛出错误。
禁止使用with语句:在严格模式下,使用
with语句将抛出错误。禁止扩展原生对象:在严格模式
