JavaScript数组every方法

Posted Qiemoer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript数组every方法相关的知识,希望对你有一定的参考价值。

1.every数组方法的作用

判断数组中是否所有元素都满足条件

2.语法:array.every( function ( item, index,arr) )

第一个参数: item,必须,当前元素的值

第二个参数 : index,可选,当前元素在数组中的索引值

第三个参数 : arr,当前元素所处的数组对象

3.every方法特点

(1)循环次数 !== 数组长度

(2)函数内部的return

return true : 循环继续 当前元素满足条件,继续判断,如果循环执行完毕还是true,则every的返回值就是true

return false : 循环结束,当前元素不满足条件,every的返回值也是false

(3)every方法的返回值

return true : 全部元素都满足条件

return false : 有元素不满足条件

4.注意点:

(1)every()方法不会对空数组进行检测

(2)every()方法不会改变原始数组

5.应用场景 : 开关思想,购物车全选

示例 : 

//获取全选框
const checkAll = document.querySelector('#checkAll')
//获取所有选择框
const checkList = document.querySelectorAll('.check')
//点击全选框
checkAll.onclick = function () 
    //设置每一个选择框checked值与自身checked一致   
    checkList.forEach(item => item.checked = this.checked)

//点击每一个选择框:判断数组中是否所有选择框checked值都为true
for(let i = 0;i<checkList.length;i++)
    checkList[i].onclick = function()
    //事件处理
    //判断 checkList是否所有的元素checked值都是true
        checkAll.checked = Array.from(checkList).every( item => item.checked )
    

javaScript数组操作方法之 some和every

最近用到数组的两个方法,some和every,这两个方法都挺有用的,但是网上相关的说明都比较含糊,所以准备自己来写一个

some()方法用于检测数组中的元素是否满足指定条件(函数提供)。

some()方法会依次执行数组的每个元素:

  如果有一个元素满足条件,则表达式返回true,剩下的元素不会再执行检测。  

  如果没有满足条件的元素,则返回false。

注意:some()不会对空数组进行检测

   some()不会改变原始数组。

some方法使用的时候传参形式: array.some(function(currentValue,index,arr),thisValue)

currentValue --------必选,当前元素的值;

index            ---------可选,当前元素的索引

arr                ----------可选,当前元素属于的数组对象

thisValue      ----------可选,当前元素属于的数组对象

some()方法用于检测数组中的元素是否满足指定条件(函数提供)。

some()方法会依次执行数组的每个元素:

  如果有一个元素满足条件,则表达式返回true,剩下的元素不会再执行检测。  

  如果没有满足条件的元素,则返回false。

注意:some()不会对空数组进行检测

   some()不会改变原始数组。

 

every方法使用的时候传参形式: array.every(function(currentValue,index,arr),thisValue)

currentValue --------必选,当前元素的值;

index            ---------可选,当前元素的索引

arr                ----------可选,当前元素属于的数组对象

thisValue      ----------可选,当前元素属于的数组对象

  • 如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
  • 如果所有元素都满足条件,则返回 true。

注意: every() 不会对空数组进行检测。

注意: every() 不会改变原始数组。

以上是关于JavaScript数组every方法的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript数组every方法

javaScript数组操作方法之 some和every

every方法返回值为Boolean类型

JavaScript--遍历数组的三种方法map()forEach()filter() & 确认数组元素是否满足某种条件( some() & every() )

前端随心记---------函数

javascript中关于数组的迭代方法