【js】不用变量接收map返回值,那map的返回值会放在哪里?

//类似这种情况,map函数这个返回值会放在哪里?同样保存在内存中吗?
arr.map(item=>{

return item*2

})

阅读 3.5k
3 个回答

会得到表达式的值, 没有引用到就会垃圾回收

返回值是有的,但是你找不到它,执行完毕后,直接被当作垃圾回收了。不会保存下来。

返回值不存在垃圾回收, 只存在被覆盖的问题. 函数返回值通常都是使用特定的寄存器来存放的, 比如32位以内的返回值类型会存放在 eax 中, 即使你不使用它, 返回值还是会在 eax 中, 这个值也一直不会被回收, 但是后续其他的操作可能会使用 eax 存储新的值, 此时上一个函数的返回值就被覆盖掉. 这不是一个垃圾回收机制!

推荐问题