一、什么是严格模式
JavaScript变体的一种方式,即在严格的条件下运行JS代码。
二、开启严格模式
严格模式分为 为脚本开启严格模式和 为函数开启严格模式 两种情况
为脚本开启严格模式
<script>
'use strict';
</script>
为函数开启严格模式
需要把 'use strict'; 声明放在函数体所有语句之前。
<script>
function fn() {
'use strict';
}
function fn1() {
}
</script>
三、开启严格模式的变化
变量名必须先声明再使用
<script>
'use strict';
var num = 10;
console.log(num);
</script>
不能随意删除以及声明好的变量
<script>
'use strict';
var num = 10;
console.log(num);
delete num;
</script>
严格模式下全局作用域中函数的this是undefined
<script>
'use strict';
function fn() {
console.log(this);
}
fn();
</script>
严格模式下,调用构造函数不加new,this会报错
<script>
'use strict';
function Star() {
this.sex = '男';
}
Star();
</script>
函数名里面不能有重名的函数
<script>
'use strict';
function fn(a, a) {
console.log(a + a);
}
fn(1, 2);
</script>
不允许在非函数的代码块内声明函数
|