2014-12-20 85 views
3

在下列情況下:JavaScript的關閉和方法

var o1 = {} 
var o2 = {} 

o1.a = function a() {} 
o2.b = function b() { 
    o1.a() 
} 

是否o2.b「關過」 o1,或只是參考o1.a功能?

我懷疑這對性能或內存有重大影響,特別是考慮到我們隨時都在全球範圍內這樣做,但我只是好奇而已。

回答

-1

只是參考。該特定的電話將可以訪問o2.b()的範圍,但是如果您在其他地方撥打o1.a(),它也可以訪問當時放置的範圍(全局或關閉)。