gpt4 book ai didi

javascript - 使用字符串数组中找到的键添加/删除数组对象

转载 作者:行者123 更新时间:2023-12-01 00:52:22 24 4
gpt4 key购买 nike

我正在尝试实现一个功能,从一个项目中选择多个项目,然后使用 typescript 添加/删除到另一个项目。

        //data of the display list, each element has same value for text & value.
private listA: any = {};
private listB: any = {};

//string array contains the list of name selected
private selectA: string[] = [];
private selectB: string[] = [];

private addClick: void {

//remove all from listA that match name found in selectA
//add to listB all name found in selectA
}

我该如何实现这个功能?我已经设法获取数据(listAlistB)来填充我的列表,因此这不是问题,我的问题是为其正确准备数据。

我是 typescript 和 JavaScript 的新手,所以语法是现在出现问题的原因。我尝试使用 Object.assign()、delete 和我发现的其他几个函数,但到目前为止还没有成功。

enter image description here

最佳答案

这是您要找的吗?

  // data of the display list, each element has same value for text & value.
private listA: any[] = [];
private listB: any[] = [];

// string array contains the list of name selected
private selectA: string[] = [];
private selectB: string[] = [];

private addClick(): void {
// Get items from listA that match selectA.
const matching = this.listA.filter(x => this.selectA.includes(x.value));

// Filter listA to only include items that are not a match from selectA.
this.listA = this.listA.filter(x => !this.selectA.includes(x.value));

// Add matching items from listA to listB.
this.listB.push(matching);
}

this.listB.push(matching) 将元素追加到数组末尾。您还可以使用 this.listB.unshift(matching) 将它们添加到开头。

关于javascript - 使用字符串数组中找到的键添加/删除数组对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56875572/

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