gpt4 book ai didi

javascript - 如何从对象键中删除值

转载 作者:行者123 更新时间:2023-11-29 23:22:28 26 4
gpt4 key购买 nike

我有一个名为 active_filters 的对象数组。它包含一个名为 value 的键,该键可以包含一个或多个值(如果有多个,则用逗号分隔)。我正在尝试使用 findIndex 从值键中删除特定代码。我不确定自己做错了什么……希望得到任何帮助。谢谢!

remove_code = "SFMR";
active_filters[0] = {id: "data-type", value: "SFAR,CFAR,IFAR,SFMR,FFAR,PDAR,MCMR,EDMR,CDMR,ECMR,EDAR,CDAR,MDMR", type: "filtered-out-by-car-type"};

代码:

var index = active_filters.findIndex(function(e) { return e.value.split(",").indexOf(remove_code) && e.id === _id });
if (index > -1)
active_filters.splice(index, 1);

最佳答案

使用 [Array.findIndex()][1] 迭代数组以通过 id 查找元素。如果找到该元素,则用逗号分隔该值。使用 Array.filter()删除代码,然后 join后退。将结果分配回值属性。

var remove_code = "SFMR";
var _id = 'data-type';
var active_filters = [{id: "data-type", value: "SFAR,CFAR,IFAR,SFMR,FFAR,PDAR,MCMR,EDMR,CDMR,ECMR,EDAR,CDAR,MDMR", type: "filtered-out-by-car-type"}];

var index = active_filters.findIndex(function(o) {
return o.id === _id;
});

if(index !== -1) {
active_filters[index].value = active_filters[index].value.split(',').filter(function(s) {
return s !== remove_code;
}).join();
}

console.log(active_filters);

关于javascript - 如何从对象键中删除值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50184090/

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