【问题标题】:How to update an array of object using javascript react js? [duplicate]如何使用 javascript react js 更新对象数组? [复制]
【发布时间】:2021-08-20 08:09:48
【问题描述】:

嗨,什么是基于 id 更新对象数组的最佳方法,该 id 作为 javascript react js 中对象中的键存在。

我的对象数组 -

const myData = [
    {
        'id': 1',
        'name': 'A',
        'age': 15
    },
    {
        'id': 2',
        'name': 'B',
        'age': 99
    },
    {
        'id': 3',
        'name': 'C',
        'age': 11
    },
    {
        'id': 4',
        'name': 'D',
        'age': 22
    },
    {
        'id': 5',
        'name': 'E',
        'age': 35
    },
]

我想更新id 3 的年龄。我是在javascript react 中使用map 函数完成的,但是如果它有1000 条记录,那将需要更多时间。 我的解决方案 -

const [update , setUpdate] = useState(myData)
 const hello = update.map( item => {
    if(item.id === 3) {
        return {
            ...update,
            age: 100
        }
    }
 });
 setUpdate(hello);

我正在实现我的结果。但如果记录是 1000 条左右,则需要更多时间。最好的方法是什么?

【问题讨论】:

  • ...item 而不是 ...update。同时添加else return item

标签: javascript reactjs


【解决方案1】:

像这样找到它:

let item = myData.find(x=>x.id===3);

然后像这样更新它:

item.age=100
console.log(myData)

会影响数组

【讨论】:

  • 这将是一个状态突变,应该在 React 中避免。
猜你喜欢
  • 2021-07-07
  • 1970-01-01
  • 1970-01-01
  • 2022-11-23
  • 2022-11-27
  • 2018-06-26
  • 2020-07-18
  • 2022-01-25
  • 2021-11-19
相关资源
最近更新 更多