<script>
'use strict' //整个脚本开启严格模式
</script>
<script>
(function() {
'use strict' //整个脚本开启严格模式
})()
</script>
<script>
function fn() {
'use strict' //当前函数开启严格模式
}
</script>
<script>
'user strict'
// 1.严格模式下 变量必须先声明再使用
num = 10
console.log(num);
// 2.严格模式下 不允许删除已经声明好的变量
var c = 10
console.log(c);
delete num
// 3.严格模式下全局作用域中函数中this是undefined
function fa() {
console.log(this);
}
fa()
// 4.严格模式下 构造函数不加new调用,this会报错
function Star() {
this.name = 'lisa'
}
// Star()
new Star()
// 5.定时器里面的this还是指向window
setTimeout(function() {
console.log(this);
}, 1000)
</script>