重新创建一个数组,其中名称与子字符串匹配,并且通道类型等于 Ota


public data = [
        {
            'name': 'Item 1', 'channelType': 'ota'
        },
        {
            'name': 'Item 2', 'channelType': 'ota'
        },
        {
            'name': 'Item 3', 'channelType': 'ota'
        },
        {
            'name': 'Item 4', 'channelType': 'ota'
        },
        {
            'name': 'Item 5', 'channelType': 'direct'
        },
        {
            'name': 'Item 6', 'channelType': 'direct'
        },
        {
            'name': 'Item 7', 'channelType': 'direct'
        },
]

我想使用过滤器或减少,或者两者兼而有之,以返回名称包含子字符串且通道类型= ota 的所有数组

让我写清楚我想做的事情,

我有一个文本输入和两个复选框。一切条件 1:所有输入将协同工作以筛选数据。条件 1:它将检查输入是否是名称的子字符串。条件 2:它将检查复选框是否为通道类型 ota,如果是 ota,它将列出所有 ota 通道类型条件 3:它将检查复选框是否为直接通道类型,如果是直接,它将列出所有直接通道类型条件 4:如果同时选中两个复选框,则返回所有数据,并检查子字符串的输入名称

使用 filter() 并提供要过滤的谓词。

const filtered = data.filter(d => d.name.includes('substring') && d.channelType === 'ota');

最新更新