2012-08-02 34 views
0

我用下面的代码:如何检测Windows本地存储是否可用?

//if (Modernizr.localstorage) { 
// // window.localStorage is available! 
//} else { 
// // document.location.href = '/Error/Message/OldBrowser'; 
//} 

有一些办法,我可以做同样的事情,而不使用Modernizr的开销?

+0

'在window' – andlrc 2012-08-02 12:39:52

+1

'localStorage的' 试一下:http://stackoverflow.com/questions/4706347/JavaScript的比较-2-检查换localStorage的 – 2012-08-02 12:41:03

+2

到底有多少开销是Modernizr的,如果你只包括一个测试?无论如何,你可以只复制测试中的Modernizr来源:https://github.com/Modernizr/Modernizr/blob/master/modernizr.js#L779 – millimoose 2012-08-02 12:42:28

回答

2
if (!!window.localStorage) { 
    /* you have localstorage */ 
} 

注:localStorage的是原生提供即使在IE8

+0

你能解释!!的意义!感谢 – Alan2 2012-08-02 12:42:40

+0

(!!)加倍不是,它强制转换的表达式作为布尔 – fcalderan 2012-08-02 12:43:13

+0

感谢。我会标记为接受:-) – Alan2 2012-08-02 12:43:58

1

从DevProConnections杂志:

function supportStorage() 
{ 
    return ('localStorage' in window) && window['localStorage'] != null; 
} 
相关问题