javascript - 使用 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);
而且我不知道为什么它不起作用...
解决方案
如果您想将每个匹配item
from 的值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);
推荐阅读
- json - 如何在 JSONPath 中有条件地返回特定值?
- kubernetes - 多个 Kubernetes Operator 通信
- laravel - 显示学生使用 laravel eloquent 提供的所有科目
- docker - 如何防止其他人看到我容器内的代码?
- node.js - 在节点 js 生产中使用实验标志是不好的做法吗?
- string - 将多条记录中的长字符串连接成一个字符串
- excel - For循环每个可见行并在另一列设置值
- javascript - 连接到 MS Access 数据库的网页
- python-3.x - Django Rest Framework 序列化程序正在打印元组而不是 json
- bash - 如何在 unix 输入文件中用另一个字符串替换字符串是通过命令行参数给出的