简介
数组、every、any
判断一个数组中是否都满足特定的条件,如果满足则返回 true 否则返回 false。
// 该源码来自于 https://30secondsofcode.org const all = (arr, fn = Boolean) => arr.every(fn)代码分析
Array.prototype.every(callback[, thisArg]) 这个函数在 ES2015 中正式被实现需要注意环境是否支持。
callback 被调用时传入三个参数:元素值,元素的索引,原数组。
every 方法为数组中的每个元素执行一次 callback 函数,直到它找到一个使 callback 返回 false(表示可转换为布尔值 false 的值)的元素。
有的同学会说了,这个 all 函数 和 直接使用 Array.prototype.every 有什么区别呢?答案就在fn = Boolean 这个点睛之笔,总所周知 javascript 中的对象其实是一种特殊的函数,利用 Boolean 这个对象可以非常方便对数据进行格式化为 boolean 并返回值。every 函数不能在没有 callback 时进行调用,这个函数更多的是拓展了 every。
使用场景一个简单的微商场景,获得当前用户的所有下级并判断是否所有人都超过 平台规定的最低销售额,如果满足则可以获得特定的奖金奖励。
const MIN_SALES = 100000 // 100000 分钱 // 抽取 const disciples = [ { name: "xiaoer", sales: 100000 }, { name: "xiaosi", sales: 50000 }, { name: "menty", sales: 150000 }, ] const canAward = all(disciples, (item, index, origin) => { return item.sales > MIN_SALES })相似代码
判断一个数组中是否有一个满足的数据,如果满足则返回 true 否则返回 false
// 该源码来自于 https://30secondsofcode.org const any = (arr, fn = Boolean) => arr.some(fn)
判断一个数组中所有数据是否相等。
// 该源码来自于 https://30secondsofcode.org const allEqual = arr => arr.every(val => val === arr[0])一起成长
在困惑的城市里总少不了并肩同行的 伙伴 让我们一起成长。
如果您想让更多人看到文章可以点个 点赞。
如果您想激励小二可以到 Github 给个 小星星。
如果您想与小二更多交流添加微信 m353839115。
本文原稿来自 PushMeTop
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/102372.html
简介 数组、拆分 根据条件将数组分成两个集合。 // 该源码来自于 https://30secondsofcode.org const bifurcateBy = (arr, fn) => arr.reduce((acc, val, i) => (acc[fn(val, i) ? 0 : 1].push(val), acc), [[], []]) 代码分析 这个代码主要是利用了 Array.p...
showImg(https://segmentfault.com/img/remote/1460000018771037?w=900&h=500); 简介 benchmark、基准测试、jsPerf 在 优雅插入数组 一文中大家最多的评论就是 能不能加个基准测试。小二不是不喜欢加基准测试而是现在硬件设备的性能越来越快了,有时候一些操作不是性能问题的主要原因,当然这不是我们不写出好代码的理由。 书写...
showImg(https://raw.githubusercontent.com/pushmetop/resource/master/30-seconds-for-everyday/chunk/poster.png); 简介 数据分割、分页、异步操作、DOM优化 把数组按指定大小进行分组,可以用于分页、数据切割、异步操作数据。 // 该源码来自于 https://30secondsofcode....
摘要:如果我们需要只去查询存在字段并且字段的值为的记录,需要配合操作。的对象和一些更新的操作符如等,也可以理解为查询内后面的可选,这个参数的意思是,如果不存在的记录,是否插入为插入,默认是,不插入。可选,抛出异常的级别。 更多内容欢迎来到博客 :https://imjianjian.github.io MongoDB版本:3.4 查询文档 find() 查询所有 db.collection...
简介 字符串、数字、数组、对象、时间、类型、等于 科学家发现,人脑中会分泌多种能让人感到快乐、安全和成就感的物质,这些物质统称为快乐素。通常情况下,快乐素的释放水平很低,维持我们心情平静。只有当我们完成了预设目标,作为奖励,大脑才会增加快乐素的分泌,让人感受到满足和成功的喜悦。 这是之前看到的一篇关于 大脑奖励机制 文章的一段话,为了要获得奖励我们需要有预设目标,而是每日 30 秒系列也是为了帮助...
阅读 1110·2021-09-22 16:04
阅读 1492·2019-08-30 15:43
阅读 1095·2019-08-29 14:01
阅读 3437·2019-08-26 12:19
阅读 3351·2019-08-26 12:15
阅读 1442·2019-08-26 12:13
阅读 3261·2019-08-23 17:00
阅读 1482·2019-08-23 15:38