检查HTML 5 localStorage

时间:2012-03-02 15:08:30

标签: javascript html5 local-storage

如何检查用户浏览器的HTML 5 localStorage兼容性?

我一直在使用两张支票:

    if (window.localStorage) {
       // localStorage works!
    }

    if (typeof(localStorage) != 'undefined') {
         // localStorage works!
    }

另外,我在网上看到了一个函数,它使用try / catch块来检查localStorage是否可以添加密钥/数据对,或者抛出错误。

你会推荐这三种方法中的哪一种,第一种和第二种之间有什么区别?

3 个答案:

答案 0 :(得分:3)

以下是代码Modernizr用于localstorage

的代码
tests['localstorage'] = function() {
    try {
        localStorage.setItem(mod, mod);
        localStorage.removeItem(mod);
        return true;
    } catch(e) {
        return false;
    }
};

IMO这是检查它的推荐方法。

答案 1 :(得分:2)

@MathiasBynens撰写了一篇很好的文章,比较了不同的方法:

http://mathiasbynens.be/notes/localstorage-pattern

答案 2 :(得分:0)

两者在这里都是等价的。首先是更短,因此更方便。例如,在MDN code中使用此方法添加使用Cookie的localStorage模仿。