Как я могу перебирать файлы cookie с помощью jquery (или просто javascript)?

Я использую "Cookie Plugin" от Klaus Hartl, чтобы добавлять или обновлять файлы cookie в $(document).ready. У меня есть другое событие, которое должно перебирать все файлы cookie и делать что-то со значением каждого файла cookie. Как я могу перебирать коллекцию файлов cookie и получать идентификатор и значение каждого из них?

Я думаю примерно так:

$.cookie.each(function(id, value) { 
            alert('ID='+id+' VAL='+value); 
        });

Ответ 1

Если вы просто хотите посмотреть на файлы cookie, это не так сложно без дополнительного плагина:

$.each(document.cookie.split(/; */), function()  {
  var splitCookie = this.split('=');
  // name is splitCookie[0], value is splitCookie[1]
});

Ответ 2

Хорошо это довольно просто в простом javascript:

var keyValuePairs = document.cookie.split(';');
for(var i = 0; i < keyValuePairs.length; i++) {
    var name = keyValuePairs[i].substring(0, keyValuePairs[i].indexOf('='));
    var value = keyValuePairs[i].substring(keyValuePairs[i].indexOf('=')+1);
}

Ответ 3

Другое решение создает белые пробелы перед именем, что затрудняет отладку ошибок.

var keyValuePairs = document.cookie.split(/; */);
for(var i = 0; i < keyValuePairs.length; i++) {
    var name = keyValuePairs[i].substring(0, keyValuePairs[i].indexOf('='));
    var value = keyValuePairs[i].substring(keyValuePairs[i].indexOf('=')+1);
    ...