JavaScript 中的严格模式是什么,有什么作用?

严格模式是为JavaScript 定义了一种不同的解析与执行模型。在严格模式下,ECMAScript 3 中的一些不确定的行为将得到处理,而且对某些不安全的操作也会抛出错误。要在整个脚本中启用严格模式,可以在顶部添加如下代码:

"use strict";

作用:

  • 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为
  • 消除代码运行的一些不安全之处,保证代码运行的安全
  • 提高编译器效率,增加运行速度;
  • 为未来新版本的Javascript做好铺垫。

和普通模式的区别:

1、 没有声明就赋值的变量

       普通模式:默认为全局变量

      严格模式: 禁止

2、 this不可以指向全局变量

      因此使用构造函数时忘了加new ,会报错

3、删除变量

      必须设定configurable = true

4、报错

     普通模式:对只读属性赋值,只会默默失败

     严格模式:报错

5、重名属性

   普通模式:后面的覆盖前面的

   严格模式:报错

6、函数的重名参数

   普通模式: 不报错,可以通过arguments的index获取。

   严格模式:报错

7、整数格式

     普通模式: 第一位为0,表示八进制。

    严格模式:第一位不可以为0

8、arguments关键词

    不可以用来作为变量/函数名

9、块级作用域不可以声明函数

猜你喜欢

转载自blog.csdn.net/wanghongpu9305/article/details/112967527