我们都知道 js 是一个相对不很严谨的语言
而且开发的时候,一些代码也不是很严格要求
而严格模式就是对开发的时候写的一些内容做了要求
开启严格模式
想开启严格模式,直接在代码最开始的位置写上字符串
use strict
<script> 'use strtic' // 下面代码书写就要按照严格模式来书写 </script>严格模式的规则
1、声明变量必须有关键字 var
'use strtic' var num = 100 num2 = 200 // 这个就会报错
之前了解过,在声明变量的时候,如果没有 var 关键字,那么按照作用域的规则会自动定义成全局变量
严格模式下不可以,会报错
2、函数的形参不可重复
'use strtic' function fn(p1, p1) {} // 直接就会报错
在非严格模式下,函数两个行参一样,是不会报错的,只不过就是相当于在函数内部只有一个变量了
但是在严格模式下会报错
3、声明式函数调用的时候函数内部没有this
'use strtic' function fn() { console.log(this) // undefined } fn()
本身,全局声明式函数在调用的时候,函数内部的 this 是指向 window 的
在严格模式下,是没有 this 的
持续更新中...