我有一个对象说
SiteData(2)
[
0: { site_name: "ABC", totalPercent: 15}
1: { site_name: "XYZ", totalPercent: 31}
]
我需要将其转换成应存储在一个变量作为单一阵列
var SiteData= [[ABC,15],[XYZ,31]]
我曾尝试与Object.values(SiteData);
但我没有得到期望的输出
您需要为外部对象的内部对象申请两次Object.values
,一次,一次:
const SiteData = {
0: { site_name: "ABC", totalPercent: 15},
1: { site_name: "XYZ", totalPercent: 31}
};
const result = Object.values(SiteData).map(Object.values);
console.log(result);
你的对象是错误的。并使用map
和Object.values
做
var a=
[
{0: { site_name: "ABC", totalPercent: 15}},
{1: { site_name: "XYZ", totalPercent: 31}}
];
console.log(a.map(e=>Object.values(e).map(x=>Object.values(x).map(t=>t))))
对于正确的顺序,这是依赖于插入顺序,或者如果你有更多的性能比想要的,你可以使用所需的按键阵列来分隔值获得的值。
var data = [{ site_name: "ABC", totalPercent: 15 }, { site_name: "XYZ", totalPercent: 31 }],
keys = ['site_name', 'totalPercent'],
result = data.map(o => keys.map(k => o[k]));
console.log(result);
尝试这个
let data = [
{ site_name: "ABC", totalPercent: 15},
{ site_name: "XYZ", totalPercent: 31}
];
let tempData= [];
for(let i = 0; i<data.length; i++){
tempData.push([data[i].site_name, data[i].totalPercent])
}
console.log(tempData)