我认为应该不难,但我做对了。 我要转换对象:
{
{t1 : value1},
{t2 : value2},
{t3 : value3}
}
进入数组:
[
{t1 : value1},
{t2 : value2},
{t3 : value3}
]
我该怎么办?
我尝试过:
let items = {{t1 : value1}, {t2 : value2}, {t3 : value3}}
let arr = items.map( obj => Object.values(obj) )
但出现错误:
items.map不是函数
答案 0 :(得分:1)
尝试一下:
const obj = {
obj1: { t1: 'value1' },
obj2: { t2: 'value2' },
obj3: { t3: 'value3' }
}
let items = [];
for (var prop in obj) {
items.push(obj[prop])
}
console.log(items)
我已经纠正了一些语法错误。
答案 1 :(得分:0)
您应该注意items
,因为它的类型是Object。当您使用Object.map
时,得到的错误是:
items.map不是函数
另外,您在商品上还有另一个错误,只是一个 Object 。因此它必须包含两个元素-key
和value
答案 2 :(得分:0)
该对象无效,请尝试以下操作:
var obj = { KEY:{key: 'val'},...
使用Object.keys()
返回一个实数组,然后数组方法map()
将接受该实数组以返回数组中的对象。
var obj = {
0: {
key0: 'val0'
},
1: {
key1: 'val1'
},
2: {
key2: 'val2'
}
};
var arrKeys = Object.keys(obj);
console.log(arrKeys);
var arrObj = arrKeys.map((key, idx) => {
return obj[key];
});
console.log(arrObj);
答案 3 :(得分:0)
这是无效的对象,请尝试...。
let items = { obj1: { t1: 'value1' },obj2: { t2: 'value2' },obj3: { t3: 'value3' }}
var result = Object.keys(items).map(function(key) {
return [items[key]];
});
console.log(result);