【发布时间】:2014-05-27 22:15:53
【问题描述】:
在 Firefox 中,当我尝试时出现奇怪的行为(甚至在 firebug cosnole 中的任何地方)
function supports_local_storage() {
try {
return 'localStorage' in window && window['localStorage'] !== null;
} catch(e){
return false;
}
}
var localStorageEnabled = supports_local_storage();
if (!localStorageEnabled) {
alert('am in');
console.log('am in');
var localStorage = localStorage;
};
localStorage.setItem("textsfff", "20");
.. 如果在firefox中启用了localStorage,则不会弹出警报/控制台日志,但localstorage被未知进程破坏,因此setItem失败。
如果我重写
var localStorage = localStorage;
到
localStorage = localStorage;
代码奇迹般地工作,当“var localstorage”出现在代码中的任何地方时,它就像localstorage一样被删除,即使条件不满足。
我在 Firefox 29.0.1 中遇到了这个问题
我不能用
localStorage = 本地存储;
因为在控制台模式下我必须自己定义本地存储并且需要“var 声明”。
【问题讨论】:
-
localStorage = localStorage;没有做任何事情,就像var x; x = x;没有做很多事情一样。 -
'因为在控制台模式下我必须自己定义本地存储并且需要'var 声明''是什么意思?
-
mb21 - 在控制台模式下 localstorage 不存在,所以我自己制作了一个并将其设置为 localStorage 变量。但是由于 MrCode 的解释,即使条件不为真,条件中的 var 重新定义也会运行。
标签: javascript firefox local-storage