在javascript中声明函数和内存优化

在javascript中声明函数和内存优化,javascript,function,memory-management,Javascript,Function,Memory Management,我这样声明一个函数: function clearScrollViewCont(elm,indx,array){ elm.removeAllChildren(); $.scrollView.scrollViewCont.remove(elm); elm = null; } var clearScrollViewCont = function (elm,indx,array){ elm.removeAllC

我这样声明一个函数:

function clearScrollViewCont(elm,indx,array){

            elm.removeAllChildren();
        $.scrollView.scrollViewCont.remove(elm);
        elm = null;     
}
 var clearScrollViewCont =  function (elm,indx,array){

        elm.removeAllChildren();
        $.scrollView.scrollViewCont.remove(elm);
        elm = null;     
    }
然后我在forEach函数中调用它:

$.scrollView.scrollViewCont.getchildren().forEach(clearScrollViewCont);
前面的所有代码都在另一个大函数中,所以当这个大函数从内存中删除时,它的所有内容也将被清除,但我不知道什么是释放内存的更快方法。我习惯于为我不再需要的每个变量设置空值(即使它写在一个大函数中),但现在,我想知道如何从声明的函数中清除内存 在我以前的代码中,以这种方式声明'ClearCrollViewCont'函数不会让我以后将其置空。另一方面,如果我这样声明:

function clearScrollViewCont(elm,indx,array){

            elm.removeAllChildren();
        $.scrollView.scrollViewCont.remove(elm);
        elm = null;     
}
 var clearScrollViewCont =  function (elm,indx,array){

        elm.removeAllChildren();
        $.scrollView.scrollViewCont.remove(elm);
        elm = null;     
    }
我可以稍后将其置零(只需将'ClearCrollViewCont'变量置零),但我不知道这本身是否比第一种方法占用更多内存空间,因为我现在除了声明函数外还声明了一个变量


每种方法的优点和缺点是什么?

在我看来,两种方法占用的空间相同。是否声明如下函数并不重要:

function clearScrollViewCont(elm,indx,array){}

在这两种情况下,都会创建一个函数对象,该对象可以通过其名称调用:
ClearCrollViewCont(…)
请记住,JavaScript函数也是对象:()
因此,在我看来,这两种方法占用了相同的空间