Javascript 如何将长字符串转换为对象列表
如何使用javascript将以下内容转换为对象列表 数据:Javascript 如何将长字符串转换为对象列表,javascript,Javascript,如何使用javascript将以下内容转换为对象列表 数据: 当我对数据执行typeof时,我得到字符串。我试图做的是为每个对象创建一个包含条目的列表。我尝试了JSON.parse,但它在花括号之间的逗号上出现了错误。谢谢。对于特定字符串–逗号分隔的JSON对象–您可以将其包装在数组括号中[]并对其进行解析: var data = `{"_id":{"$oid":"5d96f2d3db90fded9f3fa2d1"},"name":"Audi","price":52642},{"_id":{"$
当我对数据执行typeof时,我得到字符串。我试图做的是为每个对象创建一个包含条目的列表。我尝试了JSON.parse,但它在花括号之间的逗号上出现了错误。谢谢。对于特定字符串–逗号分隔的JSON对象–您可以将其包装在数组括号中
[]
并对其进行解析:
var data = `{"_id":{"$oid":"5d96f2d3db90fded9f3fa2d1"},"name":"Audi","price":52642},{"_id":{"$oid":"5d96f2dedb90fded9f3fa2d2"},"name":"Mercedes","price":57127},{"_id":{"$oid":"5d96f304db90fded9f3fa2d3"},"name":"Skoda","price":9000},{"_id":{"$oid":"5d96f368db90fded9f3fa2d4"},"name":"Volvo","price":29000},{"_id":{"$oid":"5d96f370db90fded9f3fa2d5"},"name":"Bentley","price":350000},{"_id":{"$oid":"5d96f378db90fded9f3fa2d6"},"name":"Citroen","price":21000},{"_id":{"$oid":"5d96f37fdb90fded9f3fa2d7"},"name":"Hummer","price":41400},{"_id":{"$oid":"5d96f389db90fded9f3fa2d8"},"name":"Volkswagen","price":21600}`;
var parsed = JSON.parse(`[${data}]`);
然后,解析的将是一个包含8个条目的数组:
[
{
"_id": {
"$oid": "5d96f2d3db90fded9f3fa2d1"
},
"name": "Audi",
"price": 52642
},
{
"_id": {
"$oid": "5d96f2dedb90fded9f3fa2d2"
},
"name": "Mercedes",
"price": 57127
},
{
"_id": {
"$oid": "5d96f304db90fded9f3fa2d3"
},
"name": "Skoda",
"price": 9000
},
...
“但它在大括号之间的逗号上有错误”-因为它是无效的JSON。无论您从何处获得该字符串,他们都应该修复代码以输出正确格式的JSON。请访问,并阅读什么是有效的JSON。您的JSON数据不正确。还有一个JSON验证器。你很幸运得到了一个很好的回答,但这并不总是可能的。“逗号分隔的JSON对象”-。@Andreas同样挑剔,我指的是JSON规范中描述为object
的语法结构。这,你知道:
[
{
"_id": {
"$oid": "5d96f2d3db90fded9f3fa2d1"
},
"name": "Audi",
"price": 52642
},
{
"_id": {
"$oid": "5d96f2dedb90fded9f3fa2d2"
},
"name": "Mercedes",
"price": 57127
},
{
"_id": {
"$oid": "5d96f304db90fded9f3fa2d3"
},
"name": "Skoda",
"price": 9000
},
...