实验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="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中的闭包
时间: 2024-11-17 19:18:07