中等
技术面试0 次浏览设计一个简单的前端缓存系统,要求能够缓存页面数据和 API 请求结果,支持按时间和容量进行缓存清理。
微软中国前端工程师
前端缓存系统设计
答题要点
推荐答题框架:采用分层分析法,从需求分析、模块设计、实现步骤等方面进行阐述。关键要点:1. 数据结构设计,使用对象来存储缓存数据,每个缓存项包含数据本身、缓存时间和标识等信息。2. 缓存添加,当有新的数据需要缓存时,将其存储到对象中,并记录缓存时间。3. 缓存读取,在读取缓存时,先检查缓存是否存在以及是否过期,如果过期则重新获取数据并更新缓存。4. 清理策略,按时间清理时,设定一个时间阈值,删除超过该时间的缓存项;按容量清理时,当缓存达到一定大小,删除最旧的缓存项。示例思路:首先设计合适的数据结构来存储缓存,然后实现添加和读取缓存的功能,最后根据时间和容量设定清理策略,定期或在合适的时机进行清理。