我有一个对象:
obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
我需要将此对象映射到数组
['aVal', {bSub_1: 'bSub_1_value', bSub_2: 'bSub_2_value'}]
我尝试使用Object.values(obj)
,但是这种方法将所有对象级别都强制转换为数组,但是,我只需要首先强制转换。
我该怎么做?
答案 0 :(得分:3)
此答案更多是澄清而非答案。
.....但是,我只需要先投射。
这还不太清楚。
Object.values()看起来挺直的。
Object.values()
方法返回给定对象自己的可枚举属性值的数组,其顺序与for ... in循环所提供的顺序相同(不同之处在于for-in循环枚举了in ...原型链)。
请注意以下代码段如何产生您期望的确切输出:
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
答案 1 :(得分:0)
另一种相同的方法
Object.keys(obj).map(e => obj[e])