0

为什么我让每个单独的字符都显示为 0 之类的值:{

    memory=to;
    var store='[';


    $.each($('.spoke'),function(){
    store=store+'"'+$(this).attr('id')+'":"'+hexEncode('<div class="spoke"from="'+$(this).attr('from')+'"id="'+$(this).attr('id')+'">'+$(this).html()+'</div>')+'",';
    });


    store=store+']';store=store.replace(',]',']');





    $.localStorage.setItem(memory,JSON.stringify(store));

    var posts=$.localStorage.getItem(memory);

    posts=JSON.parse(posts);

    alert(posts);

    $.each(posts, function(key, value){

    alert(key+' : '+value);
    });

-------------------------哇,我太累了,它的 3:15 固定

function save(){
    memory=to;
    var store={};


    $.each($('.spoke'),function(){
    var id=$(this).attr('id');

    var p=hexEncode('<div class="spoke"from="'+$(this).attr('from')+'"id="'+$(this).attr('id')+'">'+$(this).html()+'</div>');
    store[id]=p;
    });

    $.localStorage.setItem(memory,JSON.stringify(store));

    var posts=$.localStorage.getItem(memory);

    posts=JSON.parse(posts);


    $.each(posts, function(key, value){
    $('#log').append(hexDecode(value)+' it works');
    //$.each(value, function(key, value){
    //$('#log').append(value+' it works2');
    });//});
4

2 回答 2

0

你已经对一个字符串进行了字符串化,所以当你解析它时,你会得到一个字符串,你只会读取字符串中特定索引处的字符。与其尝试手动构建 JSON,不如构建一个数组或对象,然后对其进行字符串化。

于 2013-05-16T00:56:29.430 回答
0

您不是在制作一个数组,而是一个可解析为数组的字符串。在结束元素之前,您还要关闭引号 (")。您可以创建一个有效的字符串或创建一个有效的数组,即。

store = [];
store.push("whatever");
$.localStorage.setItem(memory,JSON.stringify(store));
于 2013-05-16T00:59:17.093 回答