javascript闭包实现缓存小案例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | /* * 闭包实现缓存 * 属性:有个键--值 --->所以可以将缓存数据存放在一个对象中 * 方法:缓存存储 setCache * 缓存的获取 getCache * */ function configCache(){ var obj={}; //设置一个内部的对象 用来存储缓存数据;这个属性是私有的 //对外暴露两个公共的方法 return { setCache: function (k,v){ //设置缓存 obj[k]=v; }, getCache: function (k){ //获取缓存 return obj[k]; } }; } var conf = configCache(); console.log(conf); conf.setCache(1, 'sdwqecwqv' ); console.log(conf.getCache(1)); //sdwqecwqv /* * 注意下面这种情况,两次configCache()会产生不同的执行环境 * */ configCache().setCache(1, 'sdwqecwqv' ); console.log(configCache().getCache(1)); //undefined /* * 使用立即执行函数 * */ var cacheConfig = ( function (){ var obj={}; return { setCache: function (k,v){ obj[k]=v; }, getCache: function (k){ return obj[k]; } } })(); |
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步