html5 - 前端面試碰到了一個(gè)緩存數(shù)據(jù)的問題,來論壇上請(qǐng)教一下
問題描述
今天面試的時(shí)候面試官問我,如果一個(gè)頁面是調(diào)用后臺(tái)的某個(gè)接口拿到一個(gè)array,由100個(gè)對(duì)象組成。用這些對(duì)象十個(gè)為一頁生成了一些組件,有頁碼可以切換顯示,如果用戶點(diǎn)擊某個(gè)條目查看詳細(xì)信息后再回到目錄位置,或者是在目錄位置刷新頁面,該用什么樣的技術(shù)來減少后臺(tái)接口的調(diào)用次數(shù)。可以認(rèn)為這組數(shù)據(jù)是類似條件篩選產(chǎn)生的,刷新或者返回在條件不變的情況下拿到的數(shù)據(jù)是相同的,求指點(diǎn)
問題解答
回答1:不大明白你的意思,是說要做個(gè)假分頁嗎
回答2:也就是前端配置好查詢參數(shù),后端根據(jù)查詢參數(shù)返回對(duì)應(yīng)的數(shù)據(jù)
只需要將查詢參數(shù)以及查詢到的數(shù)據(jù)保存在本地
每次請(qǐng)求之前都判斷查詢參數(shù)是否和本地保存的一致
查詢參數(shù)一致,就用本地?cái)?shù)據(jù)
查詢參數(shù)不一致,就重新請(qǐng)求
如果需要更深層次的優(yōu)化,就需要拆分接口了。
回答3:前端分頁(就是假分頁唄
// 100 條數(shù)據(jù)的原數(shù)組const dataArr// 頁面偏移量及每頁尺寸let offset, size// 最終顯示在頁面的數(shù)據(jù)let displayArr = dataArr.slice(offset, offset + size)

網(wǎng)公網(wǎng)安備