【问题标题】:How change object value array to object value array object in react如何在反应中将对象值数组更改为对象值数组对象
【发布时间】:2021-05-25 01:49:49
【问题描述】:

我有一个像这样的对象值数组:

{
    user: ["data1", "data2"],
    user2: ["data1", "data2"],
}

我想将 object value array 更改为 object value array object,如下所示:

{
    user: [{value: "data1", name: "data1", isChecked: false}, {value: "data2",  name: "data2", isChecked: false}],
    user2: [{value: "data1", name: "data1", isChecked: false}, {value: "data2",  name: "data2", isChecked: false}]
}

【问题讨论】:

    标签: arrays reactjs object next.js arrayobject


    【解决方案1】:

    您可以使用 Object.entries 迭代对象,这将为您提供一个包含对象每个属性的 [key, value] 的数组,然后创建一个 reduce 函数来构建一个返回修改后数组的新对象使用地图功能:

    const obj = {
        user: ["data1", "data2"],
        user2: ["data1", "data2"],
    }
    const result = Object.entries(obj).reduce((acc, curr) => {
     const [key, value] = curr
    
     return {
      ...acc,
      [key]: value.map(item => ({ value: item, name: item, isChecked: false}))
     }
    
    }, {})
    
    console.log(result)

    【讨论】:

      猜你喜欢
      • 2019-04-26
      • 1970-01-01
      • 1970-01-01
      • 2019-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多