zoukankan      html  css  js  c++  java
  • javascript闭包实现缓存小案例

    ​
     /*
        * 闭包实现缓存
        * 属性:有个键--值   --->所以可以将缓存数据存放在一个对象中
        * 方法:缓存存储   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];
                }
            }
        })();
    ​
    

      

  • 相关阅读:
    git
    搁置:vue-element-admin
    JS
    开发心得
    CSS
    VSCode(主进程)
    Vue
    axios
    滚动条出现的原理
    element-ui 1.4.13
  • 原文地址:https://www.cnblogs.com/itlyh/p/6045772.html
Copyright © 2011-2022 走看看