Cordova/Javascript localStorage.setItem 仅在首次启动时

Cordova/Javascript localStorage.setItem Only on first boot

我想知道是否可以在第一次启动时只调用 localStorage.setItem。我只想设置一个 json 文件供以后使用,我不希望保存的信息因为 localStorage.setItem 每次重新启动应用程序而再次被擦除。最好的解决方案是什么?我尝试添加一个 if 并检查保存文件是否已经存在。我无法让它工作,程序崩溃了。

我曾尝试寻找其他有同样问题的人,但我找不到任何人。

这是我的代码:

localStorage.setItem('data', JSON.stringify({          < I want
    "data":[                                           < this code
        {"id":"0", "test":"test1"},                    < only called
        {"id":"1", "test":"test2"},                    < on the first
        {"id":"2", "test":"test3"},                    < boot of my
    ]                                                  < cordova
}));                                                   < app

var data = JSON.parse(localStorage.getItem('data'));

$.each( data.data , function( key, value ) {
    alert(value.test);
});

有人对这个问题有什么建议吗?感谢 reading/helping

如果您确定要为此使用本地存储,您可以在写入之前检查密钥是否存在。

if (!localStorage.getItem('data')) {
    //we haven't written the entries, write them
    localStorage.setItem('data', JSON.stringify({
        "data":[  
            {"id":"0", "test":"test1"},  
            {"id":"1", "test":"test2"},  
            {"id":"2", "test":"test3"},  
        ]                         
    }));   
}
如果找不到密钥,

getItem 将 return 为 null。