离线webapp -存储JavaScript对象



我想做一个简单的web浏览器控制台程序,可以完全离线运行。

在该程序中,我想以对象数组的形式存储一些数据,以便我可以轻松地随机选择一个对象。

我的问题是,即使我查了互联网,包括这个问题在HTML5 localStorage中存储对象和这个问题离线web应用程序。如何存储数据?,我还是不知道该怎么办。

我想找到一种方法来轻松地将对象添加到我的数组并保存这些更改,以便当我再次打开浏览器时,数据集将是完整的

我知道HTML5的本地存储只存储字符串形式的数据,所以我应该怎么做?

我应该使用Node.js吗?如果是这样,我如何将数据发送回我的web浏览器Javascript文件,以便我可以在浏览器中显示内容?

您可以使用JSON.stringify序列化您的对象数组,以便将其作为字符串存储在Web Storage中,并在检索时使用JSON.parse对其进行反序列化:

var arrayOfObjects = [
    { foo: 'hello' },
    { bar: 'world' },
    { baz: 'dinosaurs' }
];
function storeInWebStorage(key, arr) {
    localStorage.setItem(key, JSON.stringify(arr));
}
function retrieveFromWebStorage(key) {
    return JSON.parse(localStorage.getItem(key));
}
storeInWebStorage(arrayOfObjects);

请记住,您可以在Web Storage中存储的数据量是有限制的,并且这个限制因浏览器而异。

最新更新