我有这个JSON文件:
console.log(data[0][0]); // bagette
console.log(data[0][1]); // 0.200
console.log(data[1][0]); // farine
console.log(data[3][1]); // 4.000
我想将json文件中的数据转换为数组,例如:
0x4142
我是React的初学者请有人帮我写代码吗?
答案 0 :(得分:2)
var data = [{
"name": "bagette",
"price": "0.200"
}, {
"name": "farine",
"price": "1"
}, {
"name": "tomato",
"price": "1.200"
}, {
"name": "chocola",
"price": "4.000"
}];
data = data.map(val=>Object.values(val));
console.log(data[0][0]);
console.log(data[0][1]);
console.log(data[1][0]);
console.log(data[2][1]);
答案 1 :(得分:2)
您可以使用JSON.parse()
将json
解析为对象。然后,您可以将每个对象映射到数组。请注意,这是完全确保order of the properties是所需的唯一方法,因为对象属性没有保证顺序。
const json = '[{"name": "bagette","price": "0.200"}, {"name": "farine","price": "1"},{"name":"tomato","price": "1.200"}, {"name": "chocola","price": "4.000"}]';
const data = JSON.parse(json);
const transformedData = data.map(obj => [obj.name, obj.price]);
console.log(transformedData[0][0]); // bagette
console.log(transformedData[0][1]); // 0.200
console.log(transformedData[1][0]); // farine
console.log(transformedData[3][1]); // 4.000

但我真的不知道这是不是一个好主意。当您已在数据集中访问已命名的属性时,为什么要引入magic numbers。
答案 2 :(得分:2)
您可以使用Array.prototype.map()返回数组
public static readonly Uri UriBaseV2 = new Uri("https://westus.api.cognitive.microsoft.com/qnamaker/v2.0/knowledgebases");
答案 3 :(得分:1)
let arr = [{
"name": "bagette",
"price": "0.200"
}, {
"name": "farine",
"price": "1"
}, {
"name": "tomato",
"price": "1.200"
}, {
"name": "chocola",
"price": "4.000"
}]
let data = arr.map(item=>{
return [item.name, item.price]
})
你需要什么?
答案 4 :(得分:0)
不清楚你想要做什么
Yu可以使用
console.log(data[0].name) //bagette
console.log(data[0]['name']) //bagette
或迭代对象中的每个属性:
for(var propertyName in data[0]){
console.log(data[0][propertyName]);
}