我正在使用Javascript和NodeJS动态创建JSON对象数组。我想将此JSON对象数组保存到.json文件中,以备将来使用。但是,当我保存文件时,只得到内容之间用逗号分隔,而不是外方括号。
我使用fs.writeFile来做到这一点。我有一个动态创建的数组,其中包含用逗号分隔的JSON对象。我的功能如下所示。
fs.writeFile('json_files/output_'+id+'.json', ret_vals, function (err) {
if (err)
return console.log(err);
console.log('Success!');
});
我从输出中获取的文件如下所示:
{“ x”:“ y”},{“ x”:“ z”},{“ x”:“ t”}
但是,我希望我的.json文件看起来像这样: [{“ x”:“ y”},{“ x”:“ z”},{“ x”:“ t”}]
所以基本上,我希望数组括号也存在。作为参考,我使用let ret_vals = []创建了一个名为ret_vals的数组,然后使用.push()将这些json添加到其中。
如果使用stringify,则会得到括号,但是数组内容也被引号引起来,因此无法在内容上运行任何JSON比较器,因为它只能识别出整个句子是不同的。我将如何继续做我想做的事?
答案 0 :(得分:1)
是的,json.stringify
可以解决您的问题,当您需要对其进行处理时,请使用json parse
将字符串化的对象转换为数组对象