【问题标题】:filter out elements from array in javascript在javascript中过滤掉数组中的元素
【发布时间】:2022-12-06 05:42:35
【问题描述】:

下面是数组

[
  {
    CODE: '1',
    TIME: '06-10-2022 11:07:58',
    STATUS: '1',

  },
  {
    CODE: '1',
    TIME: '06-10-2022 12:14:27',
    STATUS: '0',

  },
  {
    CODE: '1',
    TIME: '06-10-2022 12:14:27',
    STATUS: '1',

  },  
  {
    CODE: '3',
    TIME: '13-10-2022 08:36:05',
    STATUS: '0',
    
  },
  {
    CODE: '3',
    TIME: '13-10-2022 10:27:16',
    STATUS: '1',

  },
  {
    CODE: '12',
    TIME: '13-10-2022 08:36:05',
    STATUS: '1',
    
  },
  {
    CODE: '12',
    TIME: '13-10-2022 10:27:16',
    STATUS: '0',

  }
]

我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以1开头或以0结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以1开头或以0结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以1开头或以0结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态
我想过滤掉以 1 开头或以 0 结尾的状态

预期输出:-

[
 
  {
    CODE: '1',
    TIME: '06-10-2022 12:14:27',
    STATUS: '0',

  },
  {
    CODE: '1',
    TIME: '06-10-2022 12:14:27',
    STATUS: '1',

  },  
  {
    CODE: '3',
    TIME: '13-10-2022 08:36:05',
    STATUS: '0',
    
  },
  {
    CODE: '3',
    TIME: '13-10-2022 10:27:16',
    STATUS: '1',

  },
  {
    CODE: '12',
    TIME: '13-10-2022 08:36:05',
    STATUS: '1',
    
  },

]
  

【问题讨论】:

  • 请详细说明您要实现的目标。你的例子不是很清楚。另外,到目前为止你尝试了什么?
  • 例如:- { CODE: '1',TIME: '06-10-2022 11:07:58',STATUS: '1'} 我想在这里删除这个 STATUS 也以 1 开头 {CODE: '12', TIME : '13-10-2022 10:27:16', STATUS: '0',} 这将从数组中删除,因为此 STATUS 以 0 结尾
  • 根据您的输入全部使用该逻辑将删除您的对象。
  • 您忘记包含 minimal reproducible example。请阅读How to Askedit,以提供更多上下文和经过广泛研究后迄今为止获得的最佳代码。

标签: javascript node.js


【解决方案1】:

假设这是你想要的:

获取一个数组并返回一个新数组,该数组仅包含不具有以 1 开头或以 0 结尾的 STATUS 的元素。

尝试这个:

function noOnesOrZeroes(array) {
  return array.filter(item => !/(^1|0$)/.test(item.STATUS));
}

【讨论】:

    【解决方案2】:

    你的问题和截图不符合我的要求。我编写了这个程序,如果 STATUS 是 0 或 1,它将输出数组中的一个元素。

    for (let i = 0; i < myArray.length; i++) {
    
       if (myArray[i].STATUS == 0 || myArray[i].STATUS == 1) {
            console.log(myArray[i]);
       }
    
    }
    

    用您的数组标识符替换“myArray”,它应该可以工作。

    【讨论】:

    • 循环应该基于 CODE 并且它应该检查第一个状态是否为 1 然后也将其删除如果最后一个状态为 0 然后也删除该元素
    猜你喜欢
    • 2023-02-18
    • 2010-09-24
    • 2018-03-14
    • 2020-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-14
    • 2022-11-02
    相关资源
    最近更新 更多