如何在JavaScript中逐行遍历换行符分隔的json?

use*_*710 3 javascript arrays json

我的项目中有一个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}}
Run Code Online (Sandbox Code Playgroud)

我不知道如何遍历每一行以将其放入数组中.我怎样才能做到这一点?

小智 7

正确使用地图怎么样?

\n\n

\r\n
\r\n
var myVar = `{"_id":707860,"name":"Hurzuf","country":"UA","coord":{"lon":34.283333,"lat":44.549999}}\r\n{"_id":519188,"name":"Novinki","country":"RU","coord":{"lon":37.666668,"lat":55.683334}}\r\n{"_id":1283378,"name":"Gorkh\xc4\x81","country":"NP","coord":{"lon":84.633331,"lat":28}}`;\r\n\r\nvar myArray = myVar.split(\'\\n\').map(JSON.parse);\r\nconsole.log(myArray);
Run Code Online (Sandbox Code Playgroud)\r\n
\r\n
\r\n

\n


epa*_*llo 6

拆分新行,用逗号连接,用括号括起来,然后解析它.

var str = `{"_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}}`

var lines = str.split(/\n/);
var wrapped = "[" + lines.join(",") + "]";
var obj = JSON.parse(wrapped);

console.log(obj);
Run Code Online (Sandbox Code Playgroud)

更好的解决方案,修复任何给你这种格式的东西,以便为你提供正确的结构.