目 录CONTENT

文章目录

JS严格模式与普通模式的区别

Administrator
2023-07-15 / 0 评论 / 0 点赞 / 17 阅读 / 712 字

最近有几位朋友一直在问,JS里面的严格模式与普通模式有什么区别😂~~

好吧 !!!

我列一下

  • 严格模式需要在脚本或函数的第一行加上"use strict"或’use strict’来开启,普通模式不需要这样做。
  • 严格模式禁止使用未声明的变量,否则会报错,普通模式下会自动创建全局变量。
  • 严格模式禁止使用with语句,因为它会导致属性绑定的不确定性。
  • 严格模式为eval语句创建了一个单独的作用域,它不能生成全局变量或影响外部作用域。
  • 严格模式禁止this关键字指向全局对象,如果不是作为对象的方法调用,this的值为undefined
  • 严格模式禁止在函数内部遍历调用栈,即不能使用arguments.calleearguments.caller
  • 严格模式禁止删除变量或不可配置的属性,否则会报错。
  • 严格模式禁止对只读属性或只有getter方法的属性进行赋值,否则会报错。
  • 严格模式禁止使用八进制数字语法和转义字符。
  • 严格模式要求对象内的所有属性名在对象内必须唯一,否则会报错。
  • 严格模式要求函数的参数名必须唯一,否则会报错。
0

评论区