This article describes how to use window. name to implement windowStorage.
The Code is as follows:
// 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 ('| ');
}
};