📜  js 严格模式 - Javascript (1)

📅  最后修改于: 2023-12-03 15:32:22.117000             🧑  作者: Mango

JS 严格模式 - Javascript

JS 严格模式是一种程序执行模式,可以让Javascript在更严格的条件下运行,并且使代码更加安全,减少一些不必要的错误。在严格模式下,某些不安全的操作会抛出错误,例如对未声明变量的赋值,禁止使用with语句,以及对只读属性的赋值等。

如何启用严格模式?

在Javascript文件或函数的开头添加指令"use strict";即可启用严格模式。如下:

"use strict";
var x = 10;
严格模式中的变化
  • 对未声明变量的赋值会报错
"use strict";
x = 10; // 报错: x未声明
  • 禁止使用with语句
"use strict";
var obj = {a: 1, b: 2};
with (obj) { // 报错: 禁止使用with语句
  console.log(a + b);
}
  • 禁止删除变量
"use strict";
var x = 10;
delete x; // 报错: 禁止删除变量
  • 对只读属性的赋值会报错
"use strict";
var obj = {};
Object.defineProperty(obj, "x", {
  value: 1,
  writable: false // 将x设置为只读属性
});
obj.x = 2; // 报错: 对只读属性赋值
优点
  • 增强代码的健壮性和可维护性。

  • 提高Javascript代码的运行效率。

  • 有利于团队合作开发,规范开发规范。

缺点
  • 有些老旧的Javascript代码不支持严格模式,需要做相关的兼容工作。

  • 严格模式下某些功能会受到限制,需要开发者花费更多的时间和精力进行开发和调试。

为了提高代码的质量和健壮性,建议在开发中启用严格模式。

参考资料:MDN-严格模式