我正在使用phonegap和knout编写一个应用程序。我希望访问我的本地存储的函数为不存在的键返回空字符串而不是空值。出于某种原因,它在 Firefox 和 safari 上运行良好,但是当我尝试在 chrome 或我的 android 设备中使用它时崩溃。它看起来像这样:
function get(key) {
var value = window.localStorage.getItem("" + key);
if(value)return value;
return "";
在没有任何逻辑(返回值;)的情况下返回值变量时,它可以工作。我试过使用 typeof(value)==="string"、value!==null 和一些三元组,结果完全相同。我什至试过
function isNull(value){
try{
if(value==null) return true;
return false;
}
catch(e){
return true;
}
}
function get(key){
var value = window.localStorage.getItem("" + key);
if(isNull(value)) return "";
return value;
}
结果相同,程序崩溃。帮助任何人?
更新:最终这工作:
function get(key) {
var value=load(key);
if(!value) return "";
return value;
}
function load(key){
var value = window.localStorage.getItem("" + key);
// if(value == null)
// value = "";
return value;
}
我厌倦了我必须忍受的所有这些 webkit 废话。为什么谷歌讨厌我们?