我希望创建一个包含来自另一个Object
的对象的新数组这是我的尝试:
var obj = {
a:{},
b:{}
}
var arr = new Array().concat(obj,[]);
可悲的是,这会返回一个这样的数组:
Array[1]
0: Object
a: Object
b: Object
但是,所需的数组应如下所示:
Array[2]
0: Object
a: Object
1: Object
b: Object
如何在不必循环对象的情况下以最短的方式实现这一目标?
答案 0 :(得分:2)
这是一个没有显式循环的例子:
var r = Object.keys(obj).map(function(key) {
var o = {};
o[key] = this[key];
return o;
}, obj);