javascript - 對象里的一些沒用了的數(shù)據(jù)大家是怎么處理的~
問題描述
向后端接口請求數(shù)據(jù) 返回 用戶信息 以及一個 網(wǎng)站列表
用戶信息 請求回來顯示了之后就沒有其他地方用了 但是用戶 網(wǎng)站列表 這個需要到處去用
在用 網(wǎng)站列表 的時候我是直接用返回回來的數(shù)據(jù)對象還是新建一個對象把 網(wǎng)站列表 的數(shù)據(jù)放進去
如果用原數(shù)據(jù)對象 那么對象里包含的用戶信息等一些已經(jīng)沒用了的數(shù)據(jù)就沒法被回收 不爽 還浪費內(nèi)存……
問題解答
回答1:你需要清楚的是,腳本語言編程中解釋器附帶了內(nèi)存回收機制,可以在 Chrome 的 Performance 中查看頁面的堆內(nèi)存占用和自動回收情況。
實際情況是,用于渲染頁面的數(shù)據(jù)量遠小于當(dāng)前的機器閾值水平。舉例:在我的地圖庫 http://sinomap.ewind.us 中,對表示中國地形在 2000 行水平的 JSON 數(shù)據(jù),每個有 10 條內(nèi)的簡單數(shù)字和 100 字內(nèi)的字符串。以 60fps 的幀率全量對其做簡單計算,內(nèi)存占用也不過 30M 左右。所謂【浪費內(nèi)存】的擔(dān)心在多數(shù)情況下是不現(xiàn)實的。
回答2:新建數(shù)據(jù)對象再拷貝數(shù)據(jù)是最浪費資源的方案,包括 CPU 和 內(nèi)存;
不處理直接使用原數(shù)據(jù),稍微占用內(nèi)存;
獲取原數(shù)據(jù)后刪掉無用數(shù)據(jù),占用 CPU 和 執(zhí)行時間;比較而言,通常選 2 ,對用戶體驗而言,響應(yīng)速度比內(nèi)存重要,除非內(nèi)存 OOM 。
相關(guān)文章:
1. 為什么我ping不通我的docker容器呢???2. nignx - docker內(nèi)nginx 80端口被占用3. python3.x - python連oanda的模擬交易api獲取json問題第五問4. angular.js - angular內(nèi)容過長展開收起效果5. java - SSH框架中寫分頁時service層中不能注入分頁類6. 關(guān)于docker下的nginx壓力測試7. docker鏡像push報錯8. javascript - js代碼獲取驗證碼倒計時問題9. dockerfile - [docker build image失敗- npm install]10. html5 - 百度echart官網(wǎng)下載的地圖json數(shù)據(jù)亂碼
