在我的角度应用中,我将服务中的值作为一个对象数组获得,如下所示。
temp= [
{
"a": "AAA",
"b": "bbbb",
"c": "CCCC",
"d": "ddddd",
},
{
"a": "lmn",
"b": "opq",
"c": "rst",
"d": "uvw",
}
]
我需要将此temp格式化为字符串数组的数组:
newTemp =
[
['AAA', 'bbbb', 'CCCC', 'ddddd'],
['lmn', 'opq', 'rst', 'uvw'],
];
我们是否需要对每个对象进行forloop,或者是否有任何直接的方式。
答案 0 :(得分:2)
您可以使用Array.map
let newArray = arr.map(a => Object.values(a))
如果您无法使用Object.values
let newArray = arr.map(a => Object.keys(a).map(k => a[k]))
输出
(2) [Array(4), Array(4)]
0:(4) ["AAA", "bbbb", "CCCC", "ddddd"]
1:(4) ["lmn", "opq", "rst", "uvw"]
答案 1 :(得分:0)
尝试以下方法:
temp= [
{
"a": "AAA",
"b": "bbbb",
"c": "CCCC",
"d": "ddddd",
},
{
"a": "lmn",
"b": "opq",
"c": "rst",
"d": "uvw",
}
]
var newTemp = [];
temp.forEach(function(obj){
var arr = [];
Object.keys(obj).forEach(function(key){
arr.push(obj[key]);
})
newTemp.push(arr);
});
console.log(newTemp);