首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

【面试题】1887- 如何判断两个数组的内容是否相等

题目 给定两个数组,判断两数组内容是否相等。...直接遍历✍ 直接遍历第一个数组,并判断是否存在于在第二个数组中 求差集, 如果差集数组有长度,也说明两数组不等(个人感觉比上面的麻烦就不举例了) const arr1 = ["apple", "banana...of arr) { resMap.set(item, (resMap.get(item) || 0) + 1); } return resMap } // 检查计数对象是否相等...评论区大佬方案(+1、-1) 只需要一个对象 遍历第一个数组就 +1 遍历第二个数组就 - 1 最后遍历对象,只要不是都是 0 就等于不匹配 这样就不需要俩个对象了,而且第二个遍历的时候如果找不到这个值的话也可以直接退出了...arr2.length } NaN 判断的时候,会有隐式转换(参数不是数字时会隐式转换) Number.isNaN 判断才是严格相等 isNaN('11') // false isNaN('ccc'

16710

【面试题】1915- 如何判断两个数组的内容是否相等

题目 给定两个数组,判断两数组内容是否相等。...直接遍历✍ 直接遍历第一个数组,并判断是否存在于在第二个数组中 求差集, 如果差集数组有长度,也说明两数组不等(个人感觉比上面的麻烦就不举例了) const arr1 = ["apple", "banana...of arr) { resMap.set(item, (resMap.get(item) || 0) + 1); } return resMap } // 检查计数对象是否相等...评论区大佬方案(+1、-1) 只需要一个对象 遍历第一个数组就 +1 遍历第二个数组就 - 1 最后遍历对象,只要不是都是 0 就等于不匹配 这样就不需要俩个对象了,而且第二个遍历的时候如果找不到这个值的话也可以直接退出了...arr2.length } NaN 判断的时候,会有隐式转换(参数不是数字时会隐式转换) Number.isNaN 判断才是严格相等 isNaN('11') // false isNaN('ccc'

12510

【面试题】1887- 如何判断两个数组的内容是否相等

题目 给定两个数组,判断两数组内容是否相等。...直接遍历✍ 直接遍历第一个数组,并判断是否存在于在第二个数组中 求差集, 如果差集数组有长度,也说明两数组不等(个人感觉比上面的麻烦就不举例了) const arr1 = ["apple", "banana...of arr) { resMap.set(item, (resMap.get(item) || 0) + 1); } return resMap } // 检查计数对象是否相等...评论区大佬方案(+1、-1) 只需要一个对象 遍历第一个数组就 +1 遍历第二个数组就 - 1 最后遍历对象,只要不是都是 0 就等于不匹配 这样就不需要俩个对象了,而且第二个遍历的时候如果找不到这个值的话也可以直接退出了...arr2.length } NaN 判断的时候,会有隐式转换(参数不是数字时会隐式转换) Number.isNaN 判断才是严格相等 isNaN('11') // false isNaN('ccc'

16610

lodash判断对象数组是否相等_js删除数组中指定元素并返回剩下的

先来看【原始数组】和【最终数组】对比: 标题有点绕,总的来说,是一个数组,根据以下步骤拆解: ① 根据两个不同字段 “label” 、”type” 分别做筛选,-> 生成两个 对象 obj_label...合并 arr_label 和 arr_type 为 modu_data ④ 去重 modu_data ⑤ 过滤 modu_data 中为空的键值 ---- 前置了解: lodash.js...① 使用 groupBy(),第一个参数是原始数组,第二个值是根据“关键词”做筛选,在这里需要根据 label 和 type 这两个值分别做筛选,生成两个键值对象 lodash.groupBy(res_data..., "label") lodash.groupBy(res_data, "type") ② 使用 toPairsIn() 将对象转为数组,参数是 Object 对象 lodash.toPairsIn...= "null"; }); ———-结束——— 总的来说是想纪录下吧,毕竟这个让我花了2个小时写完的,本来使用原生的JS写的,写完发现太长了,还是借助工具吧。

4.8K40
领券