array
- 多维数组:
array[0] = [["1","2","3"],["1","2","3"],["1","2","3"]];
我需要将此数组放入cookie($.cookie('myCookie', JSON.stringify(array))
)
现在是有趣的部分:
我需要维护myCookie
并在其中添加新数据。
如果新生成的array
有任何新数据(元素),我需要从数组中提取新元素并将它们添加到myCookie
最优雅的方法是什么?
答案 0 :(得分:0)
最优雅的方法是以与您首先设置相同的方式执行此操作 - 使用新的数组值覆盖您的Cookie ...
答案 1 :(得分:0)
以下是步骤格式:
jsonArray
的JSON版本。jsonArray
进行比较。jsonArray
。答案 2 :(得分:0)
哦,我不知道在客户端语言的客户端存储上使用cookie。这真的是让php处理的。
您应该查看localStorage这样的内容,这样会更方便。
localStorage['item'] = "Hello world";
alert(localStorage['item']); // Hello World
localStorage['item'] += "!!!";
alert(localStorage['item']); // Hello World!!!
localStorage['item'] = "Good bye";
alert(localStorage['item']); // good bye
var obj = {0:{text:"Hello"}, 1:{text:"World"}};
localStorage['item'] = JSON.stringify(obj);
JSON.parse(localStorage['item']); // {0:{text:"Hello"}, 1:{text:"World"}}
sessionStorage
与localStorage
类似,但只会在浏览器或标签关闭之前一直存在。
希望这有帮助!
答案 3 :(得分:0)
尝试这样的事情:
jQuery(document).ready(function($){
var a=[];
a[0]= [["1","2","3"],["1","2","3"],["1","2","3"]];
a[1]= [["8","9","9"],["5","6","7"]];
var json_string_old=JSON.stringify(a);
//set myCookie
$.cookie('myCookie',json_string_old);
//change the value of the array as per your requirments
a[1]=[["2","2","2"],["2","2","2"]];
a[2]=[["4","4","4"],["4","4","4"]];
//convert it again to JSON String
var json_string_new=JSON.stringify(a);
//now compafre & update accordingly
if(json_string_new === json_string_old){
console.log("same no need to update cookie");
}else{
console.log("different ok lets update the cookie");
$.cookie('myCookie',json_string_new);
}
});