ES5-ES6-ES7_严格模式
Posted lo-me
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES5-ES6-ES7_严格模式相关的知识,希望对你有一定的参考价值。
运行模式
正常(混杂)模式与严格模式,除了正常运行模式(混杂模式),ES5添加了第二种运行模式:"严格模式"(strict mode)
顾名思义,这种模式使得javascript在更严格的语法条件下运行
严格模式的目的/作用
1. 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为
2. 消除代码运行的一些不安全之处,为代码的安全运行保驾护航
3. 为未来新版本的Javascript做好铺垫
严格模式的使用
在全局或函数的第一条语句定义为: ‘use strict‘;
如果浏览器不支持, 只解析为一条简单的语句, 没有任何副作用
语法和行为改变
必须用var声明变量,正常模式下一个变量可以不使用var或者let来声明,这样变量会自动提升到window对象下,执行不报错,但加了严格模式的时候就会报错了
ussernam = 232;
console.log(ussernam)
禁止自定义的函数中的this指向window
function Person(age, name) { this.age = age this.name = name } // 使用的时候要使用new,不new直接调用的时候this指向的是window // 非严格模式下不会报错,严格模式下就会报错了 Person(32, ‘huang‘)
创建eval作用域
* 对象不能有重名的属性
以上是关于ES5-ES6-ES7_严格模式的主要内容,如果未能解决你的问题,请参考以下文章
__x__(81)1017第十六天__ JavaScript 严格模式