首页 > 代码库 > es6要用严格模式

es6要用严格模式

实验let的块级作用域,在sublime的Tools——Babel——Babel Transform检测未出现错误,在html中也未出现错误,唯在控制台中一直报错。

//js名为es6.js ---* es6.js *---改前:let a = [];for (let i = 0; i < 10; i++) {    a[i] = function() {        console.log(i);    };}a[6]();


//html中

<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="http://www.mamicode.com/es6.js">
</script>
</head>

原因:ES6代码开头时要声明为"use strict"。

//改后"use strict";let a = [];for (let i = 0; i < 10; i++) {    a[i] = function() {        console.log(i);    };}a[6]();

等价于ES5中的闭包

 

es6要用严格模式