【问题标题】:Javascript Arrays Opposite of Includes与包含相反的 Javascript 数组
【发布时间】:2018-07-13 13:14:02
【问题描述】:

在 JavaScript 中删除具有特定字段的对象的正确方法是什么?

我可以包含以下字段:

filteredResult = filteredResult.filter(e => e.selectedFields.includes("Red"));

但是,如果我想删除所有具有此字段的属性,我会怎么做?文档中似乎没有“删除”。

【问题讨论】:

    标签: javascript arrays filter


    【解决方案1】:

    直接否定它。

    filteredResult = filteredResult.filter(e => !e.selectedFields.includes("Red"))
    

    【讨论】:

    • 没问题,我们都会偶尔错过明显的事情。尽管再看一遍,我认为代码没有多大意义——您肯定希望过滤函数中的某些内容依赖于e 的值吗?也许你的意思是selectedFields.includes(e)
    • 可能是e.selectedFields.includes("Red')
    • 现在来看看,我同意,它没有多大意义。我想我需要检查我的过滤。感谢您为我指明正确的方向。
    【解决方案2】:
    filteredResult = filteredResult.filter((l) => (['Red', 'Blue','Yellow'].every(y => !l.selectedFields.toLowerCase().includes(y.toLowerCase()))));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-13
      • 1970-01-01
      • 2012-01-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多