Ответ 1
@MathiasBynens написал хорошую статью об этом, сравнивая разные подходы:
Как проверить соответствие HTML 5 localStorage для браузера пользователей?
Я использовал две проверки:
if (window.localStorage) {
// localStorage works!
}
и
if (typeof(localStorage) != 'undefined') {
// localStorage works!
}
Кроме того, я видел функцию онлайн, которая использует блок try/catch для проверки того, может ли localStorage добавлять пару ключ/данные или выдает ошибку.
Какой из этих трех методов вы бы порекомендовали, и есть ли какие-либо различия между первым и вторым?
@MathiasBynens написал хорошую статью об этом, сравнивая разные подходы:
Ниже приведен код Modernizr для localstorage
tests['localstorage'] = function() {
try {
localStorage.setItem(mod, mod);
localStorage.removeItem(mod);
return true;
} catch(e) {
return false;
}
};
IMO это в значительной степени рекомендуемый способ проверить его.
Оба эквивалентны здесь. Сначала короче и, следовательно, более удобно. Этот метод используется, например, в код MDN для добавления имитации localStorage
, которая использует файлы cookie.