Как кодировать объект JavaScript как JSON?
есть ли хороший способ кодировать объект JavaScript как JSON?
У меня есть список пар ключ-значение...где имя взято из флажка, а значение равно true или false в зависимости от того, установлен ли флажок или нет:
var values = {};
$('#checks :checkbox').each(function() { values[this.name]=this.checked; });
Я хочу передать эти значения в объект JSON, чтобы сохранить их в файле cookie для отображения таблицы (столбцы будут добавлены в соответствии с тем, что пользователь проверяет).
кто-нибудь знает решение?
2 ответа:
Я думаю, что вы можете использовать JSON.преобразовать в строки:
// after your each loop JSON.stringify(values);
все основные браузеры теперь включают собственное кодирование/декодирование JSON.
// To encode an object (This produces a string) var json_str = JSON.stringify(myobject); // To decode (This produces an object) var obj = JSON.parse(json_str);
обратите внимание, что будут закодированы только действительные данные JSON. Например:
var obj = {'foo': 1, 'bar': (function (x) { return x; })} JSON.stringify(obj) // --> "{\"foo\":1}"
допустимые типы JSON: объекты, строки, числа, массивы,
true
,false
иnull
.некоторые ресурсы JSON: