作者zerodevil (冰心无情)
看板PLT
标题Re: [问题] 为什麽local variable的scope不能延及ꐠ…
时间Thu Mar 6 04:20:17 2008
乱入补充一下
其实如果允许nested function的话
拿到上一层function的变数也没什麽不好
function foo() {
var x = 1;
function bar() {alert(x)}
bar();
}
我想应该不用特别解释了
这个例子的bar可以看到x然後印出1
bar宣告在foo里面,
所以bar在的时候一定有x可以用
想在compile time算出x的address也不是什麽问题
(如果javascript可以compile的话)
这样godfat大提到的问题或许可以少一些?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.90.68
※ 编辑: zerodevil 来自: 140.112.90.68 (03/06 04:21)
1F:推 linjack:这应该是比较像 lambda / closure 的概念?不太一样吧._.? 03/06 11:40
2F:推 godfat:同意 linjack, 这样是无法无中生上层的 local var 的 03/06 15:11
3F:→ godfat:也就是那有一定的限制在,不能任意操作 local var 03/06 15:12