Javascript Localstorage在firefox中无法正常工作。返回空值的对象
我正在将chrome扩展移植到firefox。在chrome中一切正常,但以下代码在firefox中生成错误Javascript Localstorage在firefox中无法正常工作。返回空值的对象,javascript,html,firefox,local-storage,firefox-addon-sdk,Javascript,Html,Firefox,Local Storage,Firefox Addon Sdk,我正在将chrome扩展移植到firefox。在chrome中一切正常,但以下代码在firefox中生成错误 localStorage.setItem("display_tooltip", false); data = localStorage.getItem('display_tooltip'); if(data.display_tooltip) //line where error occurs display_tooltip =
localStorage.setItem("display_tooltip", false);
data = localStorage.getItem('display_tooltip');
if(data.display_tooltip) //line where error occurs
display_tooltip = true;
else
display_tooltip = false;
我在firefox上得到一个错误,说数据为空。我哪里做错了。当我运行chrome扩展时,同样的代码可以完美地工作。
我正在使用firefox插件sdk 您的数据是:
data = localStorage.getItem('display_tooltip')
为什么要使用数据。是否显示工具提示以检查?只要if(data){…}
。也许您需要检查数据的类型。可能是字符串true或false,但不是bool。您的数据是:
data = localStorage.getItem('display_tooltip')
为什么要使用数据。是否显示工具提示以检查?只要if(data){…}
。也许您需要检查数据的类型。可能是字符串true或false,但不是bool。不存储字符串,因此您必须进行相应的比较。您需要检查数据
变量而不是数据。显示工具提示
,如下所示:
localStorage.setItem("display_tooltip", false);
data = localStorage.getItem('display_tooltip');
// variavle 'data' holds value stored in 'display_tooltip' variable
if(data == "true") {
//your code
alert("True");
}
else {
//false, your code
alert("False");
}
演示::不存储字符串,因此您必须进行相应的比较。您需要检查数据
变量而不是数据。显示工具提示
,如下所示:
localStorage.setItem("display_tooltip", false);
data = localStorage.getItem('display_tooltip');
// variavle 'data' holds value stored in 'display_tooltip' variable
if(data == "true") {
//your code
alert("True");
}
else {
//false, your code
alert("False");
}
演示::它在任何浏览器中都不起作用
您正在为变量数据设置“false”,因此数据。显示工具提示不存在
只需询问数据的值
:
if (data == 'true')
display_tooltip = true;
else
display_tooltip = false;
请注意,localStorage
不存储布尔值,因此在检查值时需要询问“true”字符串。它在任何浏览器中都不起作用
您正在为变量数据设置“false”,因此数据。显示工具提示不存在
只需询问数据的值
:
if (data == 'true')
display_tooltip = true;
else
display_tooltip = false;
请注意,localStorage
不存储布尔值,因此在检查值时需要询问“true”字符串