第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有一個關(guān)于變量回收的問題,請教各位大神,謝謝

有一個關(guān)于變量回收的問題,請教各位大神,謝謝

慕田峪8701529 2018-05-21 00:15:19
var?a?=?function(){???? ????????var?i?=?0;???? ????????return?function(){ ????????++i; ????}? }() a();//1 a();//2 var?b?=?function(){??? ?????????var?i?=?0;???? ?????????return?++i; } b();//1 b();//1對于第一個, i 由于被閉包引用所以沒被回收,這是可以理解的。但是,對于第二個例子,我們不用閉包的時候之所以i每次都為0是因為每次都運行了var i= 0,這跟回收沒關(guān)系吧?那怎么理解“函數(shù)運行完后變量就被回收”這句話呢?我們定義一個全局變量:var grobal = 10; 它為什么沒被回收?
查看完整描述

3 回答

?
minip

TA貢獻10條經(jīng)驗 獲得超0個贊

我的理解是?

1、全局變量 grobal 掛在全局對象上,除非你的全局對象銷毀,否則不會被回收(比如關(guān)閉瀏覽器窗口)

2、函數(shù)執(zhí)行后,如果沒有使用閉包的話,它的生命周期應(yīng)該就結(jié)束了,變量就被回收,使用了閉包的話, 函數(shù)的局部變量 能被內(nèi)層的 函數(shù)作用域 持有訪問 所以沒有被回收( js 的作用域一般是靜態(tài)的,i 的值查詢 應(yīng)該是先從 最里層作用域開始,沒有的話再向上一級作用域中查找? )


查看完整回答
反對 回復(fù) 2018-05-21
  • 3 回答
  • 0 關(guān)注
  • 1521 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號