鍍金池/ 問答/Java  HTML/ 【js】不用變量接收map返回值,那map的返回值會放在哪里?

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

//類似這種情況,map函數(shù)這個(gè)返回值會放在哪里?同樣保存在內(nèi)存中嗎?
arr.map(item=>{

return item*2

})

回答
編輯回答
墨小白

會得到表達(dá)式的值, 沒有引用到就會垃圾回收

2017年1月4日 19:34
編輯回答
爛人

返回值不存在垃圾回收, 只存在被覆蓋的問題. 函數(shù)返回值通常都是使用特定的寄存器來存放的, 比如32位以內(nèi)的返回值類型會存放在 eax 中, 即使你不使用它, 返回值還是會在 eax 中, 這個(gè)值也一直不會被回收, 但是后續(xù)其他的操作可能會使用 eax 存儲新的值, 此時(shí)上一個(gè)函數(shù)的返回值就被覆蓋掉. 這不是一個(gè)垃圾回收機(jī)制!

2017年6月29日 13:43
編輯回答
茍活

返回值是有的,但是你找不到它,執(zhí)行完畢后,直接被當(dāng)作垃圾回收了。不會保存下來。

2018年6月1日 03:42