繁体   English   中英

如何使用 JSON.stringify 输出一个 javascript 数组,其中每个数组项都是一个新行

[英]How do I output a javascript array where each array item is a new line using JSON.stringify

我的目标是获取一个 javascript 数组对象并将其输出到一个字符串格式,我可以将其存储在文件中。 我想使用 JSON.stringify 因为它比我自己的函数要健壮得多。 如果必须,我可以为它使用一个新功能。

我有一个包含多个对象的数组说 [{"attr1":"val", "attr2":"val", "attr3":"val"}, {"attr1":"val", "attr2":"val ", "attr3":"val"}, {"attr1":"val", "attr2":"val", "attr3":"val"}, ...] 我需要将它存储在一个文本文件中格式为

[{"attr1":"val", "attr2":"val", "attr3":"val"},
 {"attr1":"val", "attr2":"val", "attr3":"val"}, 
 {"attr1":"val", "attr2":"val", "attr3":"val"}, 
 ...]

我知道我可以使用 JSON.stringify 进行漂亮的打印,但它会在新行上打印每个属性,而不是在换行上打印每个数组项。

这是一个单行:

 const data = [{"attr1":"val", "attr2":"val", "attr3":"val"},{"attr1":"val", "attr2":"val", "attr3":"val"},{"attr1":"val", "attr2":"val", "attr3":"val"}] const formatted = `[${data.map(JSON.stringify).join(',\\n ')}]` console.log(formatted)

您需要首先将数组的每个对象存储在新行中,为此您可以执行以下简单循环:

 const arr = [{ "attr1": "val", "attr2": "val", "attr3": "val" }, { "attr1": "val", "attr2": "val", "attr3": "val" }, { "attr1": "val", "attr2": "val", "attr3": "val" }] let text = ''; for(let obj of arr){ text += JSON.stringify(obj) + '\\n' } console.log(text);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM