js用闭包实现缓存原理

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
<script>
    //缓存:一般来说对于一些经常使用的数据,并且这些数据都是从后端获取过来的来进行缓存

    //用户id:用户的唯一标识
    //登录(/user/login)--->获取id
    //修改用户信息:--->必须要知道用户的id才能该用户的信息
    //购物车/收藏夹--->必须要知道用户的id才能该用户的信息


    //对于一些经常使用,但是经常修改的数据就不能保存了,比如说搜索结果


    //外层函数只执行了一次,只产生了唯一的执行环境,也就只产生了唯一的cacheObj对象,用户想要操作这个对象,必须通过我们暴露的4个闭包函数
    var CacheManager=(function(){
        var cacheObj={};
        return {
            setItem:function(key,value){
                cacheObj[key]=value;
            },
            getItem:function(key){
                return cacheObj[key];
            },
            removeItem:function(key){
                delete cacheObj[key];
            },
            //清空缓存
            clear:function(){
                cacheObj={};
            }
        }
    })();

    CacheManager.setItem("name","lisi");
    alert(CacheManager.getItem("name"));
    CacheManager.setItem("age","20");
    CacheManager.setItem("gender","女");
    CacheManager.setItem("userId","888");
    CacheManager.removeItem("age");
    alert(CacheManager.getItem("gender"));//"女"
    alert(CacheManager.getItem("age"));//undefined
</script>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ITzhongzi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值