第一段: var x = 3第二段: x = 3针对这种不同,阮老师给出的解释是这样的:大家是如何理解第一种情况的?参考地址:ECMAScript 6 入门
1 回答
婷婷同学_
TA贡献1844条经验 获得超8个赞
参数自己整体是一个“块”,仅此而已。你通过断点单步搞明白代码执行的流程,剩下的就是 闭包行为 ,变量名“逐级向上”,直到 global
。扯那么多没用的 ……
debugger;
var x = 1;
var a = 999;
function foo(x,
y =
function() {
debugger;
console.log(x) // 12
x = 22;
console.log(a) // 999
a = 8;
console.log(a) // 8
z = 123;
return function(){ return x }
}
)
{
debugger;
var x = 3;
var a = 0;
var f = y();
console.log(f()); // 22
console.log(x); // 3
}
foo(12)
console.log(x) // 1
console.log(a) // 8
console.log(global.z) // 123
添加回答
举报
0/150
提交
取消