如何查看localstorage是否可用
how to check whether localstorage is available?
W3Schools推荐(http://www.w3schools.com/html/html5_webstorage.asp)
if(typeof(Storage) !== "undefined") {
// Code for localStorage/sessionStorage.
} else {
// Sorry! No Web Storage support..
}
检查浏览器中是否有可用的本地存储
我使用下面的
var l=localStorage!==null?localStorage:0;
if(l) { /*code for locale storage*/}
,并想知道这是否足够和可靠的所有浏览器?
我真的很感谢你的帮助!-
w3fools mdash;你似乎认为w3schools与w3c –它们不是。
-
使用
window.localStorage
。如果没有window
,您将在不支持localStorage
的浏览器中获得ReferenceError
。 -
不要使用
localStorage !== null
。在不支持的浏览器中,localStorage
将是undefined
,而不是null
。更好的运算符是!= null
,但我根本不会使用比较运算符。您可以直接将window.localStorage
传递给三元运算符(l = window.localStorage ? localStorage : 0
),或者更好的是,使用||
:
var l = window.localStorage || 0;
编辑:真的,这是所有你需要的:
if (window.localStorage) {
// do stuff with localStorage
// no need to use window anymore
}
您可以使用Modernizr检查这个
就像这里的答案一样:如何检测浏览器是否支持HTML5本地存储
有时浏览器会阻止对localStorage的访问,例如当您以隐身模式或私有模式浏览时…所以检查存储是否存在并不是最好的主意,因为有时它存在,但不可访问。
你可以使用这个函数:
function storageON() {
try {
localStorage.setItem("__test", "data");
} catch (e) {
return false;
}
return true;
}
if (storageON()) { /* DO SOMETHING */ }
相关文章:
- 是否可以在Adobe AIR中使用localStorage和window.openDatabase
- JavaScript测试localStorage是否持久
- Javascript 搜索 LocalStorage 变量是否存在
- 为什么不是'是否使用localStorage而不是cookie?(在其他情况下也是如此)
- 使用localStorage记住用户是否已经投票
- 在localStorage中存储HTTP Basic授权标头是否存在任何安全问题
- 是否可以在localStorage中设置不可修改(常量)项?如果是,如何
- 是否可以像在Javascript对象中那样将整数值存储在localStorage中,并在不进行类型转换的情况下提取它
- 如何使用javascript和localStorage验证元素是否存在于html中
- LocalStorage是否以任何方式支持自定义(即非基元类型)对象存储和检索
- 在Javascript中,从localStorage检索时是否可能有一个等待动画
- window.localStorage.setItem和localStorage.setItem之间是否有任何区别?
- 如何查看localstorage是否可用
- 是否有可能使用localstorage与上下文每路径像cookie
- 检测浏览器是否允许设置localStorage.setItem();
- HTML5 LocalStorage:检查一个键是否存在
- 如何检查我是否有一个特定的值在我的localStorage
- JQuery检查是否设置了localStorage
- 检查localStorage中是否存在变量的值
- 如何根据localStorage中是否有条目来设置对象中的值?