确定数组的所有成员是否满足指定的测试。

## 语法

~~~

array1.every(callbackfn[, thisArg])

~~~

## 参数

|参数|定义|

|--|--|

|array1|必需。一个数组对象。|

|callbackfn|必需。一个接受最多三个参数的函数。 every 方法会为 array1 中的每个元素调用 callbackfn 函数,直到 callbackfn 返回 false,或直到到达数组的结尾。|

|thisArg|可选。可在 callbackfn 函数中为其引用 this 关键字的对象。如果省略 thisArg,则 undefined 将用作 this 值。|

## 返回值

如果 callbackfn 函数为所有数组元素返回 true,则为 true;否则为 false。如果数组没有元素,则 every 方法将返回 true。

## 异常

如果 callbackfn 参数不是函数对象,则将引发 TypeError 异常。

~~~

ExceptionCondition

~~~

## 备注

every 方法会按升序顺序对每个数组元素调用一次 callbackfn 函数,直到 callbackfn 函数返回 false。如果找到导致 callbackfn 返回 false 的元素,则 every 方法会立即返回 false。否则,every 方法返回 true。

不为数组中缺少的元素调用该回调函数。

除了数组对象之外,every 方法可由具有 length 属性且具有已按数字编制索引的属性名的任何对象使用。

System_CAPS_note注意

可以使用 some 方法 (Array) (JavaScript)检查回调函数是否对数组的任何元素均返回 true。

### 回调函数语法

回调函数的语法如下所示:

~~~

function callbackfn(value, index, array1)

~~~

可使用最多三个参数来声明回调函数。

下表列出了回调函数参数。

|回调参数|定义|

|--|--|

|Value|数组元素的值。|

|index|数组元素的数字索引。|

|array1|包含该元素的数组对象。|

### 修改数组对象

数组对象可由回调函数修改。

下表描述了在 every 方法启动后修改数组对象所获得的结果。

|every 方法启动后的条件|元素是否传递给回调函数|

|--|--|

|在数组的原始长度之外添加元素。|否。|

|添加元素以填充数组中缺少的元素。|是,如果该索引尚未传递给回调函数。|

|元素被更改。|是,如果该元素尚未传递给回调函数。|

|从数组中删除元素。|否,除非该元素已传递给回调函数。|

下面的示例阐释了 every 方法的用法。

~~~

// Define the callback function.

function CheckIfEven(value, index, ar) {

document.write(value + " ");

if (value % 2 == 0)

return true;

else

return false;

}

// Create an array.

var numbers = [2, 4, 5, 6, 8];

// Check whether the callback function returns true for all of the

// array values.

if (numbers.every(CheckIfEven))

document.write("All are even.");

else

document.write("Some are not even.");

// Output:

// 2 4 5 Some are not even.

下面的示例阐释 thisArg 参数的用法,该参数指定对其引用 this 关键字的对象。

JavaScript

// Create a function that returns true if the value is

// numeric and within range.

var checkNumericRange = function(value) {

if (typeof value !== 'number')

return false;

else

return value >= this.minimum && value <= this.maximum;

}

// Create an array of numbers.

var numbers = [10, 15, 19];

// Check whether the callback function returns true for

// all of the array values.

// The obj argument enables use of the this value

// within the callback function.

var obj = { minimum: 10, maximum: 20 }

if (numbers.every(checkNumericRange, obj))

document.write ("All are within range.");

else

document.write ("Some are not within range.");

// Output:

// All are within range.

~~~

js中every用法_every方法相关推荐

  1. js中every用法_every方法怎么使用

    JavaScript中的every()方法检查数组中的所有元素并执行函数,如果函数在任何数组循环中返回false并且不检查剩余元素,则此循环退出.数组没有值,every()方法不会执行.它也不会改变原 ...

  2. JS中 new Date() 各方法的用法

    JS中 new Date() 各方法的用法 1.new Date() 参数篇 a.返回类型为国标时间, b.无参数时可以直接返回输出时的时间, c.有参数时则返回对应时间的国标时间, d.日期中间的符 ...

  3. js中match、replace方法中使用正则表达式

    为什么80%的码农都做不了架构师?>>>    js中match.replace方法中使用正则表达式 (2012-06-29 14:23:37) 转载▼ 标签: 字符串 飞雪 正则表 ...

  4. JS中数组使用的方法

    JS中数组使用的方法 数组的介绍 JavaScript Array(数组):属于对象的一种 在句子中的作用就是使用一个单独的变量来存储一系列的值 数组的创建方法 1.字面量方式:var arr=[] ...

  5. JS中所有遍历的方法

    JS中所有遍历的方法 1.for for(let i=0;i<len;i++){//do something} 2.forEach forEach 循环不支持return实例:let arr = ...

  6. node.js中的url.parse方法

    学习node.js中的url.parse方法 文章目录 前言 一.URL模块之parse方法详解 1.参数 2.实例 例子1:url.parse只传一个参数的情况 例子2:url.parse第二个参数 ...

  7. JS中令人发指的valueOf方法介绍

    转载自  JS中令人发指的valueOf方法介绍 彭老湿近期月报里提到了valueOf方法,兴致来了翻了下ECMA5里关于valueOf方法的介绍,如下: 15.2.4.4 Object.protot ...

  8. vue 懒人_Vue.js 中的实用工具方法【推荐】

    收集日常开发中常用到的一些工具方法, 包含 vue 的公用过滤器.公用指令等 (PS: 懒人养成记) 公用自定义过滤器 import Vue from 'vue' import moment from ...

  9. java有push方法么_[Java教程]js中push和join方法使用介绍

    [Java教程]js中push和join方法使用介绍 0 2013-10-09 07:00:17 push和join方法想必大家并不陌生吧,在本文将为大家详细介绍下js中的push和join方法的使用 ...

最新文章

  1. html5类选择器选择权重,Python Html5和CSS3的新增功能:CSS权重与CSS3新增选择器
  2. 5.JasperReports学习笔记5-其它数据生成动态的报表(WEB)
  3. vue和react相同点_我在React和Vue中创建了相同的应用程序。 这是区别。
  4. winscp开启ftp_如何使用winscp,如何使用winscp连接FTP
  5. WPF异步载入图片,附带载入中动画
  6. 快速获取Android应用包名和Activity名
  7. java cellformat_java使用jxl对excel表导出进行样式的设置
  8. [备忘]WPF的Colors类
  9. Halcon自定义函数封装方法(全网最详细)
  10. 使用 C# (.NET Core) 实现模板方法模式 (Template Method Pattern)
  11. 使用Servlet上传多张图片——Service层(ProductInfoService.java和ProductInfoServiceImpl)
  12. 原始socket例子
  13. openmv探索_5_openmv读取的数据输出到外界
  14. [渝粤教育] 长沙航空职业技术学院 信息技术 参考 资料
  15. Windows10如何彻底卸载MySQL
  16. Flash cs3教程-传统数字动画
  17. Vue + Spring Boot 项目实战(十一):用户角色权限管理模块设计
  18. c语言编程吉他和弦,学吉他和弦怎么弹啊?就C大调C,Dm,Em,F,G,Am,Bdim.1,2,3,4,5,6,7级和弦举个简单的例帮帮我...
  19. java 分析内存_Java 内存查看与分析
  20. 使用 PSCP将文件从 Windows 计算机快速传输到 Linux计算机

热门文章

  1. C语言实现AES加解密
  2. c语言大顶堆数组维护,图解大顶堆的构建、排序过程
  3. char和uchar区别
  4. linux怎么开启samba服务,LINUX开启SAMBA服务
  5. python二维元组_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)
  6. C 多线程编程之在类中使用多线程(thread)的方法
  7. 【亲测可用→防止入坑Routes】设置angular10项目异步加载、惰性加载、懒加载路由
  8. python pdb 基础调试
  9. 一文入门 Zookeeper
  10. ubuntu18.04 Desktop版本部署13.2.6版本ceph