html5的web storage工具

由于经常使用到,localstorage,所以自己动手封装一个工具类.

var lhs = {
    setItem: function (key, val) {
	localStorage.setItem(key, val);
    },
    addItem: function (key, val) {
	localStorage.setItem(key, val);
    },
    rmItem: function (key) {
	if (lhs.isExist(key)) {
	    localStorage.removeItem(key);
	} else {
	    alert('不存在的key');
	}
    },
    getItem: function (key) {
	if (lhs.isExist(key)) {
            return localStorage.getItem(key);
        } else {
            alert('不存在的key');
        }
    },
    isExist: function (key){
        var isExist = false, hasKey, value;
        if (key == '') {
    	    alert('key不允许为空');
        }
        //循环 localStorage 所有缓存数据
        for(var i = 0; i < localStorage.length; i++){
            hasKey = localStorage.key(i);
            value = localStorage.getItem(key);
            if(hasKey == key){
                isExist = true;
                continue;
            }
        }
        return isExist;
    },
    checkIsSupport: function () {
	if (!window.localStorage) {
		alert('您的浏览器不支持localStorage缓存');
	}
    }
};

    同理: 对于sessionStorage的操作和localStorage的操作是一样的

var lss = {
    setItem: function (key, val) {
        sessionStorage.setItem(key, val);
    },
    addItem: function (key, val) {
        sessionStorage.setItem(key, val);
    },
    getItem: function (key) {
        if (lhs.isExist(key)) {
            return sessionStorage.getItem(key);
        } else {
            return false;
        }
    },isExist: function (key){
        var isExist = false, hasKey, value;
        if (key == '') {
            alert('key不允许为空');
        }
        //循环 localStorage 所有缓存数据
        for(var i = 0; i < sessionStorage.length; i++){
            hasKey = sessionStorage.key(i);
            value = sessionStorage.getItem(key);
            if(hasKey == key){
                isExist = true;
                continue;
            }
        }
        return isExist;
    },
    checkIsSupport: function () {
        if (!window.sessionStorage) {
            alert('您的浏览器不支持sessionStorage缓存');
        }
    }
};

对于两者,可以通过特定情况来使用,localstorage一旦设置除非手动清除,否者,会一直存在是持久化的一个数据存储。而sessionStorage是一个会话级别的数据存储,会随着浏览器的的关闭而消失。

下面的clear都会将两者的数据清除。

sessionStorage.clear(); 	localStorage.clear();


你可能感兴趣的:(localStorage,sessionStorage)