使用localStorage替代cookie做本地存储,例如最近浏览历史记录

因为cookie存储有限,加上cookie每次都要上传到服务器,浪费了带宽不说,而且伤害了人民群众的感情。

基于HTML5的localStorage可能能给你带的新的希望,而且最大支持不超过5MB的数据存储。可惜的是,IE方面只支持IE8以上的版本。

使用localStorage替代cookie做本地存储,例如最近浏览历史记录_第1张图片

我花了一点时间就最近浏览记录的存储简单的写了一个javascript代码来做演示

late = {
    storage : {},
    isinit : 0,
    maxnum : 10,
    key : 'vestigial',
    _init:function(){
        if (late.isinit === 1) {
            return true;
        } else if (late.isinit === 0 && window.localStorage) {
            late.isinit = 1;
            late.storage = window.localStorage;
            return true;
        } else {
            return false;
        }
    },

    get:function(){
        if(late._init()){
            var data = late.storage.getItem(late.key);
            return JSON.parse(data);
        }else{
            return false;
        }
    },

    set:function(value){
        if(late._init()){
            var data = late.storage.getItem(late.key); 
            data = JSON.parse(data);
            if(data === null){
                data = [];
            }
            if (data.length === 10) {
                data.shift();
            }
            data.push(value);
            data = JSON.stringify(data);
            late.storage.setItem(late.key, data);
            return true;
        }else{
            return false;
        }
    }
};

var obj = {
        id:2, 
        title:'标题1', 
        url:'http://www.baidu.com'
    };
late.set(obj);
var each = late.get();
var eachlength = each.length;
for(i=0; i

实在不行的话还可以使用flash来存储,不建议使用cookie。


你可能感兴趣的:(开发速记,前端速记)