gpt4 book ai didi

javascript - 根据其他数组从javascript中的数组中删除项目

转载 作者:行者123 更新时间:2023-11-30 07:12:32 24 4
gpt4 key购买 nike

我想从列表中完全删除一个项目,下面是列表

var list = [{id: 1, match_number: 1, name: "match1"},
{id: 2, match_number: 2, name: "match2"},
{id: 3, match_number: 3, name: "match3"},
{id: 4, match_number: 4, name: "match4"},
{id: 5, match_number: 5, name: "match5"}]

我想从列表中完全删除match_number,并希望实现类似

var list = [{id: 1, name: "match1"},
{id: 2, name: "match2"},
{id: 3, name: "match3"},
{id: 4, name: "match4"},
{id: 5, name: "match5"}]

下面是我获得单个项目结果的代码,但我有一个数组,其中的键像 ['match_number','id'] 一样给出。在此基础上,我想从主列表中删除项目。

我该如何解决这个问题?

//code for single item
var listitem = list.map((i) => {
const {match_number,...item} = i;
return item;
});

最佳答案

list 数组上使用 map 将现有的对象数组修改为没有 match_number 键。

var list = [
{id: 1, match_number: 1, name: "match1"},
{id: 2, match_number: 2, name: "match2"},
{id: 3, match_number: 3, name: "match3"},
{id: 4, match_number: 4, name: "match4"},
{id: 5, match_number: 5, name: "match5"}
];

list.map(obj => delete obj.match_number);
console.log(list);

对于要删除的键数组以及不影响原始 list 数组,您可以这样做,

var list = [
{id: 1, match_number: 1, name: "match1"},
{id: 2, match_number: 2, name: "match2"},
{id: 3, match_number: 3, name: "match3"},
{id: 4, match_number: 4, name: "match4"},
{id: 5, match_number: 5, name: "match5"}
];
var res = [];
var removeArray = ['match_number','id'];
list.forEach((obj) => {
let tempObj = {};
Object.keys(obj).forEach((key)=>{
if(removeArray.indexOf(key) === -1){
tempObj[key] = obj[key];
}
});
res.push(tempObj);
});
console.log(res);
console.log(list);

关于javascript - 根据其他数组从javascript中的数组中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50252578/

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