javascript - 使用 lodash 检查数组中是否存在数组

标签 javascript lodash

如何验证子数组是否存在于其父数组中?我已经尝试过_.includes , _.find_.findIndex没有任何运气。

let arr = [[1],[2],[3]];
let el = [1];

_.includes(arr, el)   // false
_.find(arr, el)       // undefined
_.findIndex(arr, el)  // -1

澄清一下,el 是一个数组,包含 n 个整数,而 arr 是一个数组包含n个数组。

编辑:添加了 JSBIN:https://jsbin.com/tequcoloro/edit?js,console

最佳答案

您必须遍历数组并比较它的元素。

您可以使用_.isEqual函数来执行此操作:

let arr = [[1],[2],[3]];
let el = [1];

console.log(arr.filter((e) => _.isEqual(e, el)))
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>

关于javascript - 使用 lodash 检查数组中是否存在数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50109212/

相关文章:

javascript - 使用 lodash orderBy 或 sortBy 并处理空值

javascript - ES6/lodash 统计字符串中某个字符出现的次数

javascript - 汇总: "Import of non-existent export" when importing function from Lodash

javascript - 使用 Chart.js 绘制条形图

javascript - CDATA 在发送前被删除

javascript - 无法将标题标签居中放置在图像上

javascript - 过滤映射并返回 ids 数组

javascript - 如果只允许在文本字段中显示日期,jQuery 多个日期选择器将不起作用

javascript - 使用lodash将数组分组为树 "children"结构

javascript - Lodash forEach 关联数组