2012-10-07 76 views
0

我搜索了周圍的stackoverflow,發現cookie只能存儲字符串而不是數組。在cookie中存儲特殊字符的javascript數組

我有一個這樣的數組:

var myvar = { 
    'comment' : '123', 
    'blog' : 'blog', 
    'test' : '321 
    } 

然後我用這個jQuery插件管理餅乾: https://github.com/carhartl/jquery-cookie/blob/master/jquery.cookie.js

我用下面的代碼來存儲名爲「設置」餅乾:

$.cookie('setting', myvar , { expires: 1, path: '/' }); 

但是,如何將該數組轉換爲字符串,我知道我可以使用.join,但如果我的數組值例如co mment,就像中國的文字等

,我怎麼能再次訪問cookie,並得到了串並再次轉換成一個陣列中的特殊字符?

+0

這是一個對象(不是數組)。我建議看看這個問題/答案:http://stackoverflow.com/questions/6810084/encoding-javascript-object-to-json-string,它可能會有所幫助。 –

回答

2

要存儲的物體在Cookie:

var myvar = { 
    'comment' : '123', 
    'blog' : 'blog', 
    'test' : '321' 
}; 

var serialized = JSON.stringify(myvar); 

$.cookie('setting', serialized, { expires: 1, path: '/' }); 

若要從cookie中檢索的對象:

JSON.parse($.cookie("setting")); 

爲JSON.stringify和JSON.parse的例子見this answer