js操作cookie与localStorage

js操作cookie

var Cookie = {
setCookie: function(key, value, expiredays) {
expiredays = expiredays || 30; //默认30天 
var exdate = new Date();   
exdate.setDate(exdate.getDate() + expiredays);   
document.cookie = key + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
},
getCookie: function(key) {
var arr, reg = new RegExp("(^| )" + key + "=([^;]*)(;|$)");
return (arr = document.cookie.match(reg)) ? unescape(arr[2]) : null;
},
removeCookie: function(key) {
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval = this.getCookie(key);
if(cval != null)
document.cookie = key + "=" + cval + ";expires=" + exp.toGMTString();
}
};
Cookie.setCookie('name', 'staven');
Cookie.removeCookie('name');
Cookie.getCookie('name');
</code>
使用localstorage存储数据

<code>
var LocalStorage = {
getLs: function(str) {
var msgArr = localStorage.getItem(str);
return !msgArr ? msgArr = [] : msgArr = msgArr.split(',');
},
/**

  • @param {String} key 键值
  • @param {String} str 须存入的内容,若存入多个用"/"隔开
  • @param {Number} num 最大存入的条数
    */
    setLs: function(key, str, num) {
    var msgArr = this.getLs(key);
    num = num || 10;
    str = str || '';
    if(str.indexOf("/") == -1 && msgArr.indexOf(str) == -1){
    msgArr.unshift(str);
    }else{
    var list = str.split('/');
    for(var i=0,len=list.length; i<len; i++){
    if(!!list[i] && msgArr.indexOf(list[i]) == -1){
    msgArr.unshift(list[i]);
    if(msgArr.length == num+1) return;
    }
    }
    }
    if(msgArr.length == num+1) {
    msgArr.pop();
    }
    msgArr = msgArr.join(',');
    localStorage.setItem(key, msgArr);
    },
    removeLs: function(str) {
    localStorage.removeItem(str);
    },
    clearLs: function(str) {
    localStorage.clear();
    }
    };
    LocalStorage.setLs('name',"staven", 10);
    //LocalStorage.setLs('name',"1/2/3/4/5/6", 8);
    console.log(LocalStorage.getLs('name'));
    //LocalStorage.removeLs('name');

猜你喜欢

转载自blog.51cto.com/3928405/2154644