我记得:
C++:
for(int i= 0; i< 100;i++)
{
int number= 3;
}
我们将有 100 个不同的同名实例变量(但仅作为一个变量占用 100 倍内存。),但 C++ 中的变量是块作用域,因此这 100 个变量将在循环结束时被回收。
与 Javascript 相比:
JS:
for(var i=0; i < 100 ;i++)
{
var number= 3;
}
它会产生 100 个不同的变量吗?或者我们只有一个名为 number 的变量,其值为
3
。
我的意思是这些变量实际花费了多少内存?如果 for 循环没有被 a 包裹
function(){}
,那么回收提供变量的内存的机制是什么?好的,这是针对原始类型变量的。如果变量是对象,会有所不同吗?