【问题标题】:JQuery and Phonegap save data from local storage in arrayJQuery 和 Phonegap 将本地存储中的数据保存在数组中
【发布时间】:2013-11-09 14:01:03
【问题描述】:

我有存储在本地存储中的数据,我想将其拉入数组。但没有成功... 正如您将在以下代码中看到的那样,我正在尝试 console.log 数组,但它写给我:

(Chrome 控制台)

未捕获的 SyntaxError:输入 index.html:204 的意外结束 (匿名函数) index.html:204 e.resolveWith jquery-1.6.min.js:16

e.extend.ready jquery-1.6.min.js:16 c.addEventListener.z jquery-1.6.min.js:16

cordova :: 触发 deviceready 事件!波纹.js:37

未找到 8 个画布!

这是我的本地存储: 这是代码:

            $(function() {
                window.localStorage.setItem('Sample block', '{"time":1383107260539,"counter":5}');

                track_items_for_chart = [];

                for (i = 0; i < window.localStorage.length; i++) {
                    var key_name = (window.localStorage).key(i);

                    var time = (window.localStorage.getItem(key_name));
                    time = (JSON.parse(time)).time;
                    var counter = jQuery.parseJSON(window.localStorage.getItem(key_name)).counter;
                    counter = JSON.parse(counter);
                    track_items_for_chart.push("{ date: " + time + ", km: " + counter + "},");
                }
console.log(track_items_for_chart);

    });

【问题讨论】:

  • 控制台错误与上述代码无关...

标签: jquery cordova local-storage


【解决方案1】:

这些是我编写的将字符串转换为数组、添加数据、转换回字符串然后保存到本地存储的函数。

// Converts a string from local storage to an array
// to be used by program
function convert_string_to_array (string)
{

var array = string.split("^");
return array;
}

// Converts array to string to be saved into local storage

function convert_array_to_string (array)
{

var string;

for (var i = 0; i < array.length ; i++)
{
if (string != undefined){
    string = string + "^" + array[i]; // 
 }else{
    string = array[i];
}
}

return string;
}

// Used to allow user to store a string

function add_to_array(array,welcome) // simple function to add data to array
{
array[array.length] = prompt(welcome);
}

基本上,如果您有一个字符串数组,例如 myStrings = ["Hello","hi","hey how are you"] 这将允许您将其存储到本地存储以供将来使用, 它将以 localStorage.myStrings = Hello^hi^hey how are you^ 的形式存储。 此外,如果您希望 ^ 成为数据中的常用字符,只需在上述函数中将其更改为您想要的任何字符。

【讨论】:

  • 主要要了解的是,只有字符串可以存储在本地存储中,因此您必须将数据从字符串转换为数组,然后对其进行操作,然后将其转换回要存储的字符串再次。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-02
  • 2018-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-07
相关资源
最近更新 更多