如何在javascript中释放大型初始化数据
我正在寻找一种“最佳实践”,为一个单页web应用程序释放大量(几十到几百KB)的初始化数据。初始化数据以大字符串和数组文本的形式生成,但在第一次使用后,不需要。。。再次使用它的唯一条件是用户将重新加载页面,从而再次引入源 我不知道如何衡量这些技术,知道它们是否有益。显然,只有当初始化字符串和数组非常大时,它们才会特别有用。不过,为了可读性,示例很小 我的第一个想法是将未定义的赋值给变量,具体如下:如何在javascript中释放大型初始化数据,javascript,Javascript,我正在寻找一种“最佳实践”,为一个单页web应用程序释放大量(几十到几百KB)的初始化数据。初始化数据以大字符串和数组文本的形式生成,但在第一次使用后,不需要。。。再次使用它的唯一条件是用户将重新加载页面,从而再次引入源 我不知道如何衡量这些技术,知道它们是否有益。显然,只有当初始化字符串和数组非常大时,它们才会特别有用。不过,为了可读性,示例很小 我的第一个想法是将未定义的赋值给变量,具体如下: (函数(){ "严格使用",; var initStr=“在此处思考生成的巨大字符串”, ini
(函数(){
"严格使用",;
var initStr=“在此处思考生成的巨大字符串”,
initArr=[“思考”、“大”、“数组”、“of”、“单词”、“或”、“数字”、“或”、“对象”];
函数calledOnBodyLoad()
{设置(initStr,initArr);
initStr=未定义;
initArr=未定义;
}
}());代码>你不需要释放它,这是javascript;私有变量在其自身之后进行清理。请确保在调用后分离calledOnBodyLoad
处理程序(如果它附加在某个位置),这样您就可以了。@dandavis除非它们在有引用的情况下未被释放。@zerkms:outer anon表示它们都是私有的,如果需要它们,它们将不会被收集……是的,因为这不是全部代码。但我坚持我的建议,不要担心它。以后所需的任何东西都不会被收集,我们可以依靠它。此外,除了极端的边缘情况外,节省几百kb是微不足道的。。。