首页 > 解决方案 > 从数组创建新对象

问题描述

我正在尝试从数组创建具有不同属性名称的新对象。

数组是:

profiles: Array(1)
   0:
    column:
        name: "profileName"
        title: "Profile name"
    status: "Active"

我想创建返回具有两个属性的对象的新函数:

id:'profileName',profileStatus:'活动'

我创建的函数只返回一个属性未定义未定义=未定义。

function getProfile(profiles) {
    if (!profiles.length) return undefined;

    return profiles.reduce((obj, profile) => {
        console.log('profiles', profile);
        return ({
          ...obj,
          id: profile.column.name,
          profileStatus: profile.status,
        });
      }, {});
}

函数 getProfile 从外部作为输入数组“profiles”,

标签: javascript

解决方案


我刚刚在这里测试过,这似乎确实有效

const getProfile1 = (p) => p.reduce((obj, profile) =>({
    ...obj,
    id: profile.column.name,
    profileStatus: profile.status,
}), {});

推荐阅读