//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 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('読み取る前に初期化してください。');
}
return this._data[key ];
},
write: function(key, value) {
var str = [];
if (!this._inited) {
throw new Error('書き込む前に初期化してください。');
}
this._data[key] = value;
for (var k in this._data) {
str.push(escape(k) ':'エスケープ(this._data[k]) );
}
window.name = str.join('|');
}
};