gpt4 book ai didi

javascript - 使用属性名称更新对象属性中的数组

转载 作者:行者123 更新时间:2023-12-01 01:59:50 25 4
gpt4 key购买 nike

我有一个这样定义的对象:

import React, { Component } from 'react';
import './App.css';

class App extends Component {

constructor() {
super();
this.state = {
lists: ["Dogs", "Cats"],
items: {Dogs:[], Cats:[]}
};
}

handleAddItem(item) {
console.log(item);
}

我有变量

console.log(item);// output {Dogs:[{name: "lofi"}]}  

我不知道如何验证 item 中的哪个属性(DogsCats),以便我可以更新对象items{} 使其在我的示例中变成这样:

items{Dogs:[{name: "lofi"}], Cats:[]}

最佳答案

const item = {Dogs:[{name: "lofi"}]}
let whichAnimal = Object.keys(item)[0]; //Dogs
let animalObj = item[whichAnimal][0]; //{name:'lofi'}

this.setState({
items: this.state.items[whichAnimal].push(animalObj)
})

您可以使用Object.keys来获取所有键,并假设您的item一次只有一个变量,我们设置索引0。将其存储在变量,以便在 setState 期间我们将确切地知道我们要将项目插入哪个数组

关于javascript - 使用属性名称更新对象属性中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50690884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com