_.difference(array, [values])

创建一个具有唯一array值的数组,每个值不包含在其他给定的数组中。(注:即创建一个新数组,这个数组中的值,为第一个数字(array 参数)排除了给定数组中的值。)该方法使用SameValueZero做相等比较。结果值的顺序是由第一个数组中的顺序确定。

_.differenceBy(array, [values], [iteratee=_.identity])

这个方法类似_.difference ,除了它接受一个 iteratee (注:迭代器), 调用array 和 values 中的每个元素以产生比较的标准。 结果值是从第一数组中选择。iteratee 会调用一个参数:(value)。(注:首先使用迭代器分别迭代array 和 values中的每个元素,返回的值作为比较值)。

_.differenceWith(array, [values], [comparator])

这个方法类似_.difference ,除了它接受一个 comparator (注:比较器),它调用比较arrayvalues中的元素。 结果值是从第一数组中选择。comparator 调用参数有两个:(arrVal, othVal)

<template><div></div>
</template><script>
import _ from "lodash"; // 引入
export default {data() {return {};},mounted() {console.log(this.differenceFun());console.log(this.differenceByFun());console.log(this.differenceWithFun());},methods: {//1 数组过滤differenceFun() {const arr1 = [0, 1, 2, 3, "3", "4", 4]; //要检查的数组const arr2 = [2, "4"]; //要排除数组const newArr = _.difference(arr1, arr2);return newArr;},//数组过滤 ,使用一个迭代器 过滤之前先处理differenceByFun() {const arr1 = [1.1, 3.6, 5.2]; //const arr2 = [1.6, 2.3, 3.7]; //// 两个数组中每个元素经过Math.floor处理后变成[1, 3, 5]和[1, 2, 3],最终对比结果为[5.2]// [5.2]const newArr = _.difference(arr1, arr2, Math.floor);return newArr;},differenceWithFun() {return _.differenceWith([1, 3, 5], [1, 4, 3], this.customCompare);//[1,3]},customCompare(a, b) {return a - b === 1;},},
};
</script>

JS工具库之Lodash用法005 _.difference(),_.differenceBy()_.differenceWith()相关推荐

  1. 10个常用的JS工具库

    10个常用的JS工具库,80%的项目都在用! Avue Cloud 2022-01-26 09:46 图片 高手区别于普通人的重要一点是,他们善于利用工具,把更多的时间留给了规划和思考.写代码也是同样 ...

  2. 当前最流行的 js 工具库

    高手区别于普通人的重要一点是,他们善于利用工具,把更多的时间留给了规划和思考.写代码也是同样的道理,工具用好了,你就有更多的时间来规划架构和攻克难点.今天就给大家分享一下当前最流行的 js 工具库,如 ...

  3. 【JavaScript工具库】Lodash

    JS使用工具库:Lodash 作用:高效处理array.number.objects.string等对象,降低JS操作难度 特点:不会影响原实例对象,返回操作后的结果或新对象,语义化程度高 例如: 数 ...

  4. JavaScript进阶学习(二)—— 基于原型链继承的js工具库的实现方法

    文章来源:小青年原创 发布时间:2016-07-03 关键词:JavaScript,原型链,jQuery类库 转载需标注本文原始地址: http://zhaomenghuan.github.io... ...

  5. JS工具库moment —— 实现日历

    moment moment是一个js工具库,这个库中封装的是日期时间的方法,功能很全面.可以去moment官网看看,它的中文文档介绍的也很详细,主要是看一下方法的使用.附上官网地址:moment.js ...

  6. lodash中difference、differenceBy、differenceWith有什么区别?

    Lodash是一个流行的JavaScript库,它提供了一系列实用函数,可以使JavaScript编程更加简单和高效.其中包括difference.differenceBy和differenceWit ...

  7. js 工具库 Loadsh 常用方法:filter +slice + orderBy

    1. Loadsh是什么: let json = _.map(datas); 你会很疑问下划线"_"是什么,其实可以认为是Loadsh库的一个对象,这样就可以使用Loadsh库的各 ...

  8. JavaScript工具库之Lodash

    你还在为JavaScript中的数据转换.匹配.查找等烦恼吗?一堆看似简单的foreach,却冗长无趣,可仍还在不停的repeat it!也许你已经用上了Underscore.js,不错,你已经进步很 ...

  9. 分享7个实用又高效的 Node.js 工具库

    使用这7个库,加速你的项目开发 当今的软件开发行业,充斥着大量的库和框架,为开发人员提供了极大的便利性和效率.其中,JavaScript 库是最为广泛和重要的一类库之一,它们为开发人员提供了丰富的功能 ...

最新文章

  1. Android-TCPDump for Android(抓TCP数据包工具)
  2. Win32下VC编译OpenSSl
  3. 运维:windows+python+route的一次相遇
  4. 关于CSS3实现响应式布局的一些概念和术语
  5. 求你了,别再随便打日志了,教你动态修改日志级别!
  6. OpenShift 4 - Fedora CoreOS (4) - 用 Ignition 定制 CoreOS 的网络/存储等配置
  7. 实对称矩阵特征值按大小排序
  8. PHP常用函数速查表(转载)
  9. 使用GAT解析Minidump(图形界面)
  10. High-Dimensional Statistics A Non-Asymptotic Viewpoint by Martin J. Wainwright Exercise7.3
  11. 计算机 随机分组的方法,最小化随机分组方法介绍及其SAS实现
  12. volatility取证
  13. 加强统筹布局和顶层设计,以技能、平台、应用为三大着力点推动人工智能突破发展...
  14. 迷你播放器--第一阶段(7)--安全攻防第一战--对抗反编译,代码混淆和对抗动态调试
  15. 停止线程 暂停线程
  16. String Reduction
  17. 对酒当歌,孤寂之歌!
  18. Prometheus组件详解
  19. HTML <i> 标签
  20. [ MySQL ] 使用Navicat进行MySQL数据库备份 / 还原(Part 1:备份.nb3文件方式)

热门文章

  1. 数据结构-树 速通指南
  2. DeeCamp 2020总冠军,Mixlab社区专访 | AI+积木 = 方仔照相馆
  3. 【日常】物联网——嵌入式程序OTA升级功能总结
  4. 对deap数据集进行脑电情绪识别并进行频谱分析(频域特征)
  5. 【javaweb各种启动报错问题】
  6. 社交软件野蛮生长,为什么年轻人还是选择QQ?
  7. VLN阶段性小结2023.1.10
  8. 通信专业顶刊_【转】通信类顶级会议及期刊
  9. CTO技术前瞻性预测:移动互联网十大趋势
  10. python项目之基于大数据分析算法的大学生就业系统