【发布时间】:2011-05-07 20:24:54
【问题描述】:
我已经读过,由于 作用域链 在 javascript 中的工作方式,如果我们希望在函数 F 中引用未在 F 作用域内声明的变量 V,这是有益的(在性能方面是的)在F中声明一个引用V的局部变量V2,然后通过V2访问V引用的对象。
我想知道这个概念是否适用于 C# 和 VB 中的闭包(通过 lambda 访问函数中的局部变量)
Public Shared Function Example()
Dim a = 1
Dim b = New Object
Return Sub()
'when we use the variables a and b from here does it have to "go up the scope chain"
End Sub
End Function
顺便说一句,如果答案不是过早的优化是万恶之源
,我更愿意【问题讨论】:
-
您是在谈论性能方面的问题,还是...?
-
请提供代码示例。另外,“它是有益的”是什么意思?你说的好处是什么?
-
@Matti Virkkunen 我已经编辑了问题
-
@Cheeso 我已经编辑了问题
-
现在你已经更新了你的问题:我不知道,但你应该很容易测试。
标签: c# javascript vb.net scope scope-chain