Javascript 切片数组并从中生成对象

Javascript 切片数组并从中生成对象,javascript,arrays,json,ecmascript-5,Javascript,Arrays,Json,Ecmascript 5,我有一个数组,如下所示: [ { "DT_RowId": "row_4758", "companies": { "id": 23, "email": null, "name": "test" }, "USE

我有一个数组,如下所示:

[
    {
        "DT_RowId": "row_4758",
        "companies": {
            "id": 23,
            "email": null,
            "name": "test"
        },
        "USERS": {
            "UserId": 23
        }
    },.....
]
我如何分割它,只得到“公司”:结果如下:

[
    {
        "id": 23,
        "email": null,
        "name": "test"
    },.....
]
为了解决一些问题,我添加了使用data.map的函数

fn.loadData = function (data) {
                    var dataKeys = Object.keys(data);
                 console.log(data)// 'data' is an object
                    console.log(data.map(x => x.companies)) ///data.map not a function error
                    var infiniteList = document.getElementById('infinite-list');

                    infiniteList.delegate = {
                        createItemContent: function (i) {
                            return ons._util.createElement(
                                '<ons-list-item modifier="chevron" tappable>' + data[dataKeys[i]].name + '</ons-list-item>'
                            );
                        },
                        countItems: function () {
                            return Object.keys(data).length;
                        }
                    };

                    infiniteList.refresh();
                }
fn.loadData=函数(数据){
var dataKeys=Object.keys(数据);
console.log(data)/“data”是一个对象
console.log(data.map(x=>x.companys))///data.map不是函数错误
var infiniteList=document.getElementById('infinite-list');
infiniteList.delegate={
createItemContent:函数(i){
返回值。_util.createElement(
''+数据[dataKeys[i]].名称+''
);
},
countItems:函数(){
返回对象。键(数据)。长度;
}
};
refresh();
}

正如评论告诉您的那样:

const数据=[
{
“DT_RowId”:“row_4758”,
“公司”:{
“id”:23,
“电子邮件”:空,
“名称”:“测试”
},
“用户”:{
“用户ID”:23
}
},
{
“DT_RowId”:“row_3758”,
“公司”:{
“id”:24,
“电子邮件”:空,
“名称”:“test3”
},
“用户”:{
“用户ID”:24
}
},]
console.log(data.map(obj=>obj.companys))
这是有效的:

const newArray = [];
for (let i = 0; i < companyArray.length; i++) {
       newArray.push(companyArray[i].companies);
}
constnewarray=[];
for(设i=0;i

谢谢大家

array.map(m=>m.companys)
@Liam谢谢!但我得到的是“data.map不是一个函数”数据是arrayWell是一个函数。所以@yopipe问题不在你给我们看的例子中…@adirabargil谢谢你的评论,我添加了整个函数来提供更多的上下文我添加了整个函数来提供更多的上下文但是打印了什么数据?console.log(data);它返回一个object但是对象看起来如何?@adril它看起来如下:[{”DT_RowId:“row_4758”,“公司”:{“id”:23,“email”:null,“name”:“test”},“USERS”:{“UserId”:23}},…]