【发布时间】:2017-07-31 04:07:30
【问题描述】:
我的项目中有一个 JSON 文件,如下所示:
{"_id":707860,"name":"Hurzuf","country":"UA","coord":{"lon":34.283333,"lat":44.549999}}
{"_id":519188,"name":"Novinki","country":"RU","coord":{"lon":37.666668,"lat":55.683334}}
{"_id":1283378,"name":"Gorkhā","country":"NP","coord":{"lon":84.633331,"lat":28}}
我不确定如何循环遍历每一行以将其放入数组中。我该怎么做?
【问题讨论】:
-
你能打开文件并读入吗?
-
所以你想把一个无效的结构变成一个对象数组。加载文件,拆分新行,用逗号连接,用
[和]换行,然后 JSON.parse 它。或修复它,使其有效启动而不必处理。 -
@epascarello 将一种格式封装在另一种格式中很常见。行分隔的 JSON 流非常常见。这可能是处理 JSON 对象流的最好、最直接的方法。您是否愿意拥有一个无限大小的永无止境的数组并将数据永远缓冲到内存中?您宁愿破解解析器还是实现流解析器?只要您知道自己在做什么并且有一个好的用例,用行分隔的 JSON 就没有什么问题。
-
@Brad 听起来如果 OP 在数组中需要它,这不是一个好的用例。 ;)
-
您需要某种方式将其解析为 javascript 对象。如果您使用的是类似节点的后端,请尝试使用
fs如果您在浏览器中使用 javascript,则必须使用一些 ajax 请求。
标签: javascript arrays json