Вот как создать / получить cookie со значением массива в javascript
JSON-кодировать его, эффективно создавая строку типа "{name: 'myname', age: 'myage'}" который вы помещаете в cookie, извлекаете при необходимости и декодируете обратно в массив / объект JavaScript.
Пример - сохраняете массив в cookie:
var arr = ['foo', 'bar', 'baz'];
var json_str = JSON.stringify(arr);
createCookie('mycookie', json_str);
Позже, чтобыполучить содержимое cookie в виде массива:
var json_str = getCookie('mycookie');
var arr = JSON.parse(json_str);
Примечание: функции cookie не являются собственными, взяты из Как создать и прочитать значение из cookie? см. ниже:
var createCookie = function(name, value, days) {
var expires;
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toGMTString();
}
else {
expires = "";
}
document.cookie = name + "=" + value + expires + "; path=/";
}
function getCookie(c_name) {
if (document.cookie.length > 0) {
c_start = document.cookie.indexOf(c_name + "=");
if (c_start != -1) {
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(";", c_start);
if (c_end == -1) {
c_end = document.cookie.length;
}
return unescape(document.cookie.substring(c_start, c_end));
}
}
return "";
}