首页 > 解决方案 > 使用 lodash 从数组中查找子字符串并将它们推送到另一个,然后将结果与第三个表进行比较

问题描述

我有数组:

all [a,b,ac,d, A]

我想在其中使用来自lodash的过滤器找到包含子字符串“a”(“A”)的所有元素并将它们推送到另一个 - 到filterTab

   const item = "a"

我这样尝试:

import { some, method, differenceWith, isEquel } from 'lodash';
const filterTab = [];

filterTab.push (some(all, method('match',/item/i)));

但它不起作用。

如果可行,下一步将是这样的:

var dif = differenceWith(filterTab, array3, _.isEqual);

而且我不知道为什么它不起作用...

标签: javascripttestinglodashe2e-testingtestcafe

解决方案


如果您想将每个匹配itemfrom 的值all放入filterTab并获得 and 之间的差异filterTab,请array3使用以下示例:

import { filter, difference, method } from 'lodash';

const all = ['a','b','ac','d', 'A'];

const filterTab = [];
const item = 'a';

filterTab.push(...filter(all, method('match', new RegExp(item, 'i'))));

const diff = difference(array3, filterTab);

推荐阅读