В настоящее время большинство браузеров имеют собственный объект JSON
, который включает методы parse
и stringify
. Так что просто попробуйте JSON.stringify({})
и посмотрите, получите ли вы "{}"
. Вы можете даже передать параметры, чтобы отфильтровать ключи или сделать красивую печать, например JSON.stringify({a:1,b:2}, null, 2)
ставит новую строку и 2 пробела перед каждой клавишей.
JSON.stringify({a:1,b:2}, null, 2)
1010 * дает *
"{\n \"a\": 1,\n \"b\": 2\n}"
который печатается как
{
"a": 1,
"b": 2
}
Что касается возни с частью вашего вопроса, используйте второй параметр. От http://www.javascriptkit.com/jsref/json.shtml:
Параметр replacer может быть функцией или массивом
Строка / Число. Он проходит через каждый член в объекте JSON, чтобы
позвольте вам решить, на какое значение следует изменить каждый элемент. Как
функция, которую он может вернуть:
- Число, строка или логическое значение, которое заменяет исходное значение свойства на возвращенное.
- Объект, который сериализуется, а затем возвращается. Объектные методы или функции не допускаются и вместо этого удаляются.
- Нуль, что приводит к удалению свойства.
Как массив, значения, определенные внутри него, соответствуют именам
свойства внутри объекта JSON, которые должны быть сохранены при
преобразован в объект JSON.