JQuery - 存储和检索数组

时间:2012-02-15 18:03:24

标签: jquery arrays

我有一个应用程序,我在客户端使用JavaScript来构建集合。在page1.html上我有以下内容:

var collection = []; 
$.each(item, function (i, r) {
  collection.push(r);
});
alert(collection.length);

window.localStorage.setItem("collection", collection);

执行此代码时,我会在消息框中看到“4”。这正是我所期待的。当我导航到page2.html时,我有以下内容:

$(document).ready(function () {
  var collection = window.localStorage.getItem("collection");
  alert(collection.length);
});

执行此代码时,我会在消息框中看到“63”。我期待着“4”。我不知道是什么原因引起的。我的预感是,它与我试图存储一个集合的事实有关,我没有像我应该那样得到/设置。这种方法适用于我的应用程序中一些纯字符串相关的值。我不知道为什么它不在这里工作。任何人都可以指出我正确的方向吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

localStorage只能用于将对象存储为字符串,因此您需要将列表序列化为字符串(可能使用逗号或空字符)。

一个想法是在JSON.stringify上使用jQuery的collection方法并存储它。

请随时查看this post以获取更多信息。