Javascript 将json转换为数组
我试图将json字符串转换为数组,但在解析它时仍然会得到json代码作为回报Javascript 将json转换为数组,javascript,arrays,json,Javascript,Arrays,Json,我试图将json字符串转换为数组,但在解析它时仍然会得到json代码作为回报 var slag = []; for(var i=0; i < data.length; i++) { var string = JSON.stringify(data[i]); var parse = JSON.parse(string)
var slag = [];
for(var i=0; i < data.length; i++)
{
var string = JSON.stringify(data[i]);
var parse = JSON.parse(string)
slag.push(parse);
}
console.log(slag);
但我想要这样的数组
[4, "driver", 240, "straight", "perfect"]
您需要从对象中提取值,在解析JSON字符串后使用方法
var parse = Object.values(JSON.parse(string))
仅供参考:您可以直接对对象执行此操作,而不是字符串化和解析(这没有任何意义)。所以,只需使用方法从对象中迭代和提取值
for(变量i=0;i
简单地做
let data=[{id:“4”,球杆:“司机”,球座:“230”,射门:“直”,uitvoering:“完美”},{id:“9”,球杆:“ijzer7”,球座:“140”,射门:“直”,uitvoering:“完美”}];
var-slag=data.map(doc=>Object.values(doc));
控制台日志(熔渣)代码>我有点困惑,为什么你要把它串起来,然后马上解析它?date[i]和parse将具有相同的输出,除非我遗漏了什么
如果要将对象值解构为数组,可以使用Object.values方法
考虑以下几点:
let x = {id: "4", club: "driver", afstand: "230", shot: "straight", uitvoering: "perfect"};
console.log(Object.values(x));
// output: ["4", "driver", "230", "straight", "perfect"]
因此,如果您想要一个多维数组(不确定为什么需要它,但看起来这正是您试图实现的),您可以这样做:
var slag = [];
for(var i=0; i < data.length; i++) {
slag.push(Object.values(data[i]);
}
console.log(slag);
我不知道你的预期结果,但我有两个解决方案
如果您希望您的回答是:
[
"4",
"driver",
"230",
"straight",
"perfect",
"9",
"ijzer7",
"140",
"straight",
"perfect"
]
然后,您需要获取一个对象对象的值。值(元素)
并在其上进行另一个循环,然后将其推入slug
const数组=[{
id:“4”,
俱乐部:“司机”,
afstand:“230”,
射击:“直”,
乌特沃林:“完美”
}, {
身份证号码:“9”,
俱乐部:“ijzer7”,
afstand:“140”,
射击:“直”,
乌特沃林:“完美”
}];
常量slug=[];
for(设i=0;i{slug.push(r)});
}
控制台日志(slug)代码>对象。值(…)
的可能重复项
var slag = [];
for(var i=0; i < data.length; i++) {
slag.push(Object.values(data[i]);
}
console.log(slag);
0: ["4", "driver", "230", "straight", "perfect"]
1: ["9", "ijzer7", "140", "straight", "perfect"]
[
"4",
"driver",
"230",
"straight",
"perfect",
"9",
"ijzer7",
"140",
"straight",
"perfect"
]