Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
指向javascript中的新列表,垃圾收集旧列表_Javascript_Memory Management - Fatal编程技术网

指向javascript中的新列表,垃圾收集旧列表

指向javascript中的新列表,垃圾收集旧列表,javascript,memory-management,Javascript,Memory Management,我有一个关于javascript中的内存和指针/引用的问题,特别是p5js 我在代码顶部声明一个列表: var my_list; 然后我可以在任何函数中访问它,因为它是“全局的” 在我的主代码中,我有一个永恒的循环,在这个循环中我可视化我的列表,然后计算一个新的列表。在循环结束时,我想交换这些列表,以便my_list指向新创建的temp_list。实际上,我还想释放上一个列表使用的内存,因为我不再需要它了 repeated_forver(){ // visualise my_list //

我有一个关于javascript中的内存和指针/引用的问题,特别是p5js

我在代码顶部声明一个列表:

var my_list;
然后我可以在任何函数中访问它,因为它是“全局的”

在我的主代码中,我有一个永恒的循环,在这个循环中我可视化我的列表,然后计算一个新的列表。在循环结束时,我想交换这些列表,以便
my_list
指向新创建的
temp_list
。实际上,我还想释放上一个列表使用的内存,因为我不再需要它了

repeated_forver(){

// visualise my_list

// calculate temp_list
var temp_list = .. something ...

// point my_list to new data
my_list = temp_list;

}
这能满足我的要求吗

  • my_list
    指向新计算的数据,在名称
    temp_list
  • 垃圾收集以前由名称
    my_list

javascript就是这样工作的吗?我的初步研究表明,类似列表的结构是通过名称/指针引用的,这确实有效。

应该是这样。我们无法控制垃圾收集,但只要数据不再被引用,垃圾收集就会起作用。感谢@LuizChagasJr@LuizChagasJr可能与@LuizChagasJr重复,您可以在某些上下文中强制垃圾收集,例如NodeJS和Chrome v8。在此进一步解释: