严格模式的区别

严格模式与非严格模式的区别在于以下几点


1,全局变量的显示声明

2,严格模式限制了动态绑定,比如禁止使用with,创设eval的单独作用域

3,严格模式下让你头痛的this关键字不能指向全局变量了

4,不能重名:对象不能有重名属性,方法不能有重名形参

5,对于arguments的限制,严格模式下不能对其赋值了,也不再跟踪参数的变化,arguments.callee也不允许使用

6,函数必须声明在顶层,不允许在非函数代码块内声明函数

7,试图删除不可删除的属性时会抛出异常

8,严格模式禁止八进制数字语法

9,ECMAScript 6中的严格模式禁止设置primitive值的属性

10,在严格模式中一部分字符变成了保留的关键字。这些字符包括implementsinterfaceletpackageprivateprotectedpublicstaticyield。在严格模式下,你不能再用这些名字作为变量名或者形参名。

 

转载于:https://www.cnblogs.com/blackchaos/p/8808454.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值