在哪里声明对象?

时间:2014-07-25 18:48:02

标签: javascript reference garbage-collection structure

我有一个程序,基本上看起来像这样,函数func似乎永远可以访问对象,即使onload函数本身很快终止。这是有效还是我在内存中访问待收集垃圾的片段?

我应该改变吗

window.onload = function()
{
    var obj1;
    var obj2;
    var obj3;

    addEventListener("click"  , func, true);
    addEventListener("blur"   , func, true);
    addEventListener("keydown", func, true);

    function func(evt)
    {
        function1(obj1);
        function2(obj2);
        function3(obj3);
    }
}

进入这个?

var obj1;
var obj2;
var obj3;

window.onload = function()
{
    addEventListener("click"  , func, true);
    addEventListener("blur"   , func, true);
    addEventListener("keydown", func, true);

    function func(evt)
    {
        function1(obj1);
        function2(obj2);
        function3(obj3);
    }
}

0 个答案:

没有答案