"use strict"; // 后面省略此行
var a = 1;
{
let i = 0;
{
let i = 1;
{
let i = 2;
{
let i = 3;
}
}
}
}
{
var i = 0;
{
var _i = 1;
{
var _i2 = 2;
{
var _i3 = 3;
}
}
}
}
for (let i = 0; i < 10 ; i+= 1) {
setTimeout(function() {
console.log(i);
}, 1000);
}
var _loop = function _loop(i) {
setTimeout(function () {
console.log(i);
}, 1000);
};
for (var i = 0; i < 10; i += 1) {
_loop(i);
}
for
循环变量是一个父作用域,循环体内部是一个单独的子作用域
for (let i = 0; i < 10; i += 1) {
let i = 'abc';
console.log(i);
}
for (var i = 0; i < 10; i += 1) {
var _i = 'abc';
console.log(_i);
}
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
var a = 1;
a = (_readOnlyError("a"), 2);
function fn() {
var arg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
}
{
let a = 'secret';
function f() {
return a;
}
}
{
var f = function f() {
return a;
};
var a = 'secret';
}