Это кажется решенной проблемой, но я не могу найти решение для нее.
По сути, я читаю файл JSON, меняю ключ и записываю новый JSON в тот же файл. Все работает, но я теряю форматирование JSON. Так, вместо:
{
name:'test',
version:'1.0'
}
я получил
{name:'test',version:'1.1'}
Есть ли способ в Node.js написать хорошо отформатированный JSON в файл?
JSON.stringify
задыхается от циклических объектов иutil.inspect
не производит допустимый JSON. : \ Я не нашел [нативного] решения для красивой печати JSON в NodeJSОтветы:
JSON.stringify
Третий параметр определяет вставку пробела для симпатичной печати. Это может быть строка или число (количество пробелов). Узел может писать в вашу файловую систему с помощьюfs
. Пример:См. Документацию JSON.stringify () в MDN , документация Node fs.
источник
"\t"
если вы хотите вкладки.Я думаю, что это может быть полезно ... Я люблю пример кода :)
источник
tmp
папка существует, иначе это может произойти сбой.tmp
папка существует по умолчаниюЕсли вы хотите просто напечатать объект, а не экспортировать его как действительный JSON, вы можете использовать
console.dir()
.Он использует подсветку синтаксиса, умные отступы, удаляет кавычки из ключей и просто делает вывод настолько красивым, насколько это возможно.
Под капотом это ярлык для
console.log(util.inspect(…))
. Единственное отличие состоит в том, что он обходит любую пользовательскуюinspect()
функцию, определенную для объекта.источник
Если вы не хотите хранить это где-либо, а просто просматривать объект в целях отладки.
Вы можете изменить третий параметр, чтобы настроить отступ.
источник
что насчет этого?
источник