javascript本地缓存之userData(ie专用)

/**
 *storage 对象
 */
function storage (){
	var args = [].slice.call(arguments);
	this.storeName = location.hostname||"defaultData";
	this.store = {};
	this.inited = false;
}

storage.prototype={
	init:function (){
		var doc = document;
		var _storeEle = doc.createElement("div"),_body = doc.body;
		_storeEle.style.display = "none";
		_storeEle.addBehavior("#default#userData");
		_body.appendChild(_storeEle);
		this.store = _storeEle;
		this.inited = true;
	},
	getData:function (key){
		if(this.inited){
			var _st = this.store;
			_st.load(this.storeName);
			return _st.getAttribute(key);
		}else{
			this.init();
			return arguments.callee.call(this,key);
		}
	},
	addData:function (key,val,expire){
		if(this.inited){
			 var _st = this.store;
			 _st.load(this.storeName);
			 _st.setAttribute(key,val);
			 if(expire){
				 var d = new Date()+expire;
				 _st.expires = d.toUTCString();
			 }
			 _st.save(this.storeName);
		}else{
			this.init();
			arguments.callee.call(this,key,val,expire);
		}
	},
	exist:function (key){
		return !!this.getData(key);
	},
	removeData:function (key){
		var _st = this.store;
		_st.load(this.storeName);
		_st.removeAttribute(key);
		_st.save(this.storeName);
	}
}
var _st = new storage("my");
var _cache = _st.getData("test");
alert(_cache);
_st.addData("test","333");

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值