Сохранение объекта, отличного от json, в файл, а затем его восстановление?

#json #node.js

#json #node.js

Вопрос:

Рассмотрим объект var obj = [ 1, 2, 3, «temp»:»value» ];

Вы можете создать это, так что не беспокойтесь об этом. Теперь вы хотите сохранить это в файле, чтобы использовать JSON.stringify() , а затем сохранить его в файле.

Но, как вы можете видеть, приведенный выше объект не является json, поэтому stringify приведет к примерно такому результату: [1,2,3] здесь поле temp_data отсутствует.

Теперь мне нужно сохранить этот объект в файле, а затем снова получить его… Есть предложения?

Комментарии:

1. Сохранить и получить его в виде строки, написать синтаксический анализатор? Или измените формат данных, чтобы его можно было сериализовать в формате JSON?

Ответ №1:

var obj = [ 1, 2, 3, "temp":"value" ]; это недопустимый javascript, вы не можете создать это, но это допустимо: var obj = [ 1, 2, 3, {"temp":"value"} ];

Поскольку вы говорите об объекте, я предполагаю, что вы имеете в виду поместить туда скобки. С использованием скобок проблем нет, и его можно преобразовать:

 var obj = [ 1, 2, 3, {"temp":"value"} ];
JSON.parse(JSON.stringify(obj)) === obj // will return true
  

Комментарии:

1. JSON.parse(JSON.stringify(obj)) === obj НЕ вернет true . Смотрите эту статью