我有一個簡單的數組,我試圖JSON編碼並設置爲一個cookie。我正在使用json2.js腳本來編碼爲JSON。我使用下面的代碼來設置Cookie:JSON編碼數組轉換爲字符串時保存爲cookie
jQuery(document).ready(function(){
var ids = ['1', '2'];
JSON.stringify(ids);
setCookie(cookieName, ids, 1);
});
function setCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
數組轉換成JSON後,並在控制檯登錄,我得到:
["1", "2"]
這正是我所期望的。然後,我讀出用下面的函數
function getCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
餅乾當我讀出了cookie,並在控制檯中記錄它,我得到:
1,2
這表明它是一個字符串,不再是一個JSON編碼的對象。我希望能夠將cookie設置爲JSON編碼對象,將其讀出並解析JSON對象,最後對數據執行操作。因此,我的問題是,如何將JSON編碼對象發送給Cookie,以便我可以在讀出時將其解析爲JSON?
一如既往的感謝!
非常感謝!這就是爲什麼我問這些問題。經過一段時間後,我看不到像這樣的小問題。 – tollmanz 2011-05-22 19:34:39