mirror of
https://github.com/liriliri/eruda.git
synced 2026-02-02 09:49:00 +08:00
30 lines
621 B
JavaScript
30 lines
621 B
JavaScript
_('isUndef memStorage');
|
|
|
|
function exports(type, memReplacement)
|
|
{
|
|
if (isUndef(memReplacement)) memReplacement = true;
|
|
|
|
var ret;
|
|
|
|
switch (type)
|
|
{
|
|
case 'local': ret = window.localStorage; break;
|
|
case 'session': ret = window.sessionStorage; break;
|
|
}
|
|
|
|
try
|
|
{
|
|
// Safari private browsing
|
|
var x = 'test-localStorage-' + Date.now();
|
|
ret.setItem(x, x);
|
|
var y = ret.getItem(x);
|
|
ret.removeItem(x);
|
|
if (y !== x) throw new Error();
|
|
} catch (e)
|
|
{
|
|
if (memReplacement) return memStorage;
|
|
return;
|
|
}
|
|
|
|
return ret;
|
|
} |