js的严格模式应用及说明


一、严格模式的开启




1、整个文档开启严格模式



<script>
    window.addEventListener('DOMContentLoaded',function () {
        'use strict';			//为整个脚本文档开启严格模式
         ......
    })
</script>

或者

<script>
	/*
	*为这立即执行函数添加严格模式,因为这script里面只有这个立即执行函数,所以也变相
	*的给整个文档添加了严格模式
	*/
    (function () {
        'use strict';
        ......    
    }())
</script>

2、某个函数开启严格模式

<script>
    window.addEventListener('DOMContentLoaded',function () {
        function fn(){			//给这个fn函数添加严格模式
            'use strict';
            ......
        }
    })
</script>

二、严格模式的说明


1、严格模式下的变量必须先声明在使用
2、严格模式下不能随意删除变量
3、严格模式下的this指向问题

非严格模式下的全局作用域函数的this指向window
而在严格模式下的全局作用域函数的this指向undefined

4、严格模式下的定时器this指向还是window
5、严格模式下事件、对象的this还是调用者
6、严格模式下,如果构造函数不加new调用,this会报错(因为严格模式下的全局作用域函数的this指向undefined
7、严格模式下的函数不能有重复的参数
8、严格模式下的函数声明必须在最顶层,不能在非函数的代码块声明函数
以上都可参考https://developer.mozilla.org/zh-CN/docs/Glossary/strict_mode
本文只用于个人学习和记录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值