我使用了Object.parses()但出现错误
var obj = '
"users": [
{ "name":"John", "age":30, "city":"New York"},
{ "name":"Mike", "age":25, "city":"new jersey"},
]'
答案 0 :(得分:2)
尽管您没有明确提到JSON,但此数据看起来像JSON。您可以使用JSON.parse()将JSON字符串转换为JavaScript变量
但是,由于一些语法错误,您发布的字符串实际上不是有效的JSON。您可以修复这些问题以获得(我认为是)预期的对象结构:
1)删除new jersey
之前的多余双引号
2)在两端添加大括号以使其成为有效对象。
3)在最后一个数组项之后删除多余的逗号(尽管实际上很多解析器都可以接受)
所以你最终会得到
{
"users": [
{ "name":"John", "age":30, "city":"New York"},
{ "name":"Mike", "age":25, "city":"new jersey"}
]
}
这很容易解析:
var obj = '{ "users": [{ "name": "John", "age": 30, "city": "New York" }, { "name": "Mike", "age": 25, "city": "new jersey" }]}';
var data = JSON.parse(obj);
console.log(data);
console.log("----------");
//example of gettng a specific property, now it's a JS variable
console.log(data.users[0].name);
答案 1 :(得分:1)
首先,更正您的字符串。它看起来应该像插入的片段中一样。 其次,使用JSON.parse()
var t = '{"users": [{ "name":"John", "age":30, "city":"New York"},{ "name":"Mike", "age":25, "city":"new jersey"}]}';
var obj = JSON.parse(t);
console.log(obj["users"][0].name);
console.log(obj["users"][0].age);
console.log(obj["users"][0].city);