复制代码 代码如下:
//key:value|key:value
var windowStorage = {
_inited: false,
_data: {},
init: function(str) {
var tmpData, key, value, kv;
this._inited = true;
if (str && typeof str == 'string') {
tmpData = str.split('|');
for (var i = 0, len = tmpData.length; i < len; i++) {
kv = tmpData[i].split(':');
key = unescape(kv[0]);
value = unescape(kv[1]);
this._data[key] = value;
}
} else if (typeof str == 'object') {
this._data = str;
}
},
read: function(key) {
if (!this._inited) {
throw new Error('Please initialize before reading.');
}
return this._data[key];
},
write: function(key, value) {
var str = [];
if (!this._inited) {
throw new Error('Please initialize before writing.');
}
this._data[key] = value;
for (var k in this._data) {
str.push(escape(k) + ':' + escape(this._data[k]));
}
window.name = str.join('|');
}
};
【利用window.name实现windowStorage代码分享】相关文章:
★ window.onload与$(document).ready()的区别分析
★ 让插入到 innerHTML 中的 script 跑起来的实现代码
★ 浅谈javascript的call()、apply()、bind()的用法