前言: 在以外的开发中,接触过some这个方法,但是只限于在代码里看见过,还没有自己去了解并且写过,今天碰到个需求时发现使用some这个方法真香,写此文章加深印象。

定义和用法

some() 方法检查数组中的任何元素是否通过测试(作为函数提供)。

some() 方法对数组中存在的每个元素执行一次函数:

  • 如果找到函数返回真值的数组元素,some() 返回真(并且不检查剩余值)
  • 否则返回 false

注释:

  1. some() 对没有值的数组元素不执行函数。

  2. some() 不改变原始数组。

使用场景

一般是需要对数组里面每一项内容进行循环匹配时会用到,有一项满足条件时就会返回true,否则为false,示例代码如下:(当找到大于15的时候,就会返回true)

 var ages = [3, 10, 18, 20];function checkAdult(age) {return age > 15;}// ages中有一个大于15的数就会进入判断if (ages.some(checkAdult)) {// to do}

刚好在刷力扣的最长公共前缀这道题时用到了这个方法,真香。地址:https://leetcode.cn/problems/longest-common-prefix/

扩展

JS中除了some()还有个对应every()方法

定义和用法

every() 方法检查数组中的所有元素是否都通过了测试(被作为函数提供)。

every() 方法对数组中存在的每个元素执行一次函数:

  • 如果找到函数返回 false 值的数组元素,every() 返回 false(并且不检查剩余值)
  • 如果没有出现 false,every() 返回 true

注释:

  1. every() 不对没有值的数组元素执行函数。

  2. every() 不改变原始数组。

使用场景

一般是需要对数组里面每一项内容进行循环匹配时会用到,有一项不满足条件时就会返回false,否则为true,示例代码如下:(当找到大于15的时候,就会返回true)

 var ages = [3, 10, 18, 20];function checkAdult(age) {return age < 21;}// ages中全部小于21时才会进入判断if (ages.every(checkAdult)) {// to do}

js some方法和every方法的使用相关推荐

  1. Js slice()方法和splice()方法

    1.slice(start,end) 从已有的数组中返回选定元素,参数start必填,end选填 <script>delArray();function delArray(){var wo ...

  2. JS padStart()方法和padEnd()方法(ES6新增方法)

    在日常开发中,有时候会遇到字符串填充的问题,常见的如:时间不足两位数补"0"等. padStart() 用于补全头部 padEnd() 用于补全尾部 1. str.padStart ...

  3. JS服务器端开发基础篇(Array.slice方法和splice方法)

    Array.slice方法和splice方法在众多的JS数组中属于比较复杂的一个方法,而且容易记混.搜索网络上很多资料都没有发现系统的总结.特别归纳如下,不完全处还希望各位批评指正.  一.slice ...

  4. JS中的call()方法和apply()方法用法总结

    1. 每个函数都包含两个非继承而来的方法:call()方法和apply()方法. 2. 相同点:这两个方法的作用是一样的. 都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖 ...

  5. 第二百五十八节,Tornado框架-逻辑处理get()方法和post()方法,初识模板语言

    Tornado框架-逻辑处理get()方法和post()方法,初识模板语言 Tornado框架,逻辑处理里的get()方法,和post()方法 get()方法,处理get方式的请求 post()方法, ...

  6. python 推迟运行_一文看懂Python的time模块sleep()方法和strftime()方法

    概述 今天主要介绍一下Python的time sleep()方法和strftime()方法. 一.Python time sleep()方法 Python time sleep() 函数推迟调用线程的 ...

  7. Loader的load方法和loadBytes方法LoaderContext参数

    (1)在看代码的时候还发现一个以前没有这么注意的问题,也mark一下. 关于Loader的load方法和loadBytes方法LoaderContext参数的问题.. 要加载某个SWF到自己的安全域内 ...

  8. ThinkPHP 中M方法和D方法的具体区别

    M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...

  9. asp.net TemplateField模板中的Bind方法和Eval方法

    TemplateField模板中为了能够有限制的或者取出数据库中某列的值时,可以用Bind和Eval方法来实现.以下是Bind方法的格式,Eval的格式也是和Bind一样的. Bind("列 ...

最新文章

  1. 70个Python练手项目列表 预祝大家 快乐
  2. android获取状态栏截屏按钮状态,关于代码截屏带状态栏的问题
  3. 3dContactPointAnnotationTool开发日志(二一)
  4. css 样式三元运算_CSS扩展语言——Sass入门指南
  5. 腾讯急招多名.NET Core,5年30k!
  6. 第7步 mybatis-generator dao层生成器
  7. oracle数据库系统介绍,Oracle数据库(Oracle Database)体系结构及基本组成介绍
  8. struts2令牌(token)内部原理
  9. 山东科技大学c语言答案,C语言练习题(山东科技大学吐血整理)
  10. 服装行业进销存软件有哪些简单好用又便宜的?
  11. PDF编辑方法,如何裁剪PDF中的一页
  12. RSS概念 以及 POTO周博通 资讯阅读器 使用入门
  13. 大学计算机基础方案一,《大学计算机基础》实验实施方案-学生用(7页)-原创力文档...
  14. Android练手小项目--仿72g赚吧App
  15. RTX3060是什么级别显卡 RTX3060显卡什么水平
  16. 图片浏览器功能的实现(一)——图片放大与缩小功能实现
  17. linux read() 函数
  18. 动态规划法(四)0-1背包问题(0-1 Knapsack Problem)
  19. 当授权者而非推卸责任者
  20. RayMarching实现体积光渲染

热门文章

  1. 安卓Android 7.1.1 shortcut实现桌面图标快捷方式跳转,类似IOS 3d touch
  2. 单片机,51c``电子琴
  3. 数据分析的主要方法(1)——业务分析类
  4. java 防止盗链_java防止盗链
  5. EfficientNeRF
  6. 播放器service使用
  7. 区块链中的密码学应用
  8. PHP转JAVA开发30分钟实战攻略
  9. Drupal8安装中文出现错误
  10. 用Python给头像或者照片加点水印!