JavaScript数组的5种迭代方法

下面为您详细讲解JavaScript数组的5种迭代方法的完整攻略。

概述

JavaScript数组提供了5种迭代方法,它们分别是:

  1. forEach(): 迭代数组中的每一项,可以进行一些操作但无法改变原数组;
  2. map(): 对数组中的每一项进行操作并返回新的数组;
  3. filter(): 根据指定条件过滤出符合条件的元素组成新的数组;
  4. some(): 判断符合条件的元素是否存在,只要找到第一个符合条件的元素就立即返回 true;
  5. every(): 判断数组中的所有元素是否符合条件,只有当数组中的所有元素都符合条件时才返回 true

forEach()

语法:

array.forEach(function(currentValue, index, arr), thisValue)

参数:

  1. function(currentValue, index, arr): 必须。回调函数,数组中的每个元素都会执行一次该函数。分别传入当前元素的值、索引、数组对象作为参数;
  2. thisValue: 可选。用作函数中 this 的对象。

示例:

const arr = [1, 2, 3];
arr.forEach(function(item, index, arr){
  console.log(item, index, arr);
})

结果:打印出每个元素的值、索引和整个数组。
输出:

1 0 [1, 2, 3]
2 1 [1, 2, 3]
3 2 [1, 2, 3]

map()

语法:

const new_array = arr.map(function callback(currentValue[, index[, array]]) {
    // Return element for new_array
}[, thisArg])

参数:

  1. callback: 必须。生成新数组元素的函数,传入 currentValue 元素、可选的 indexarray 参数,函数返回新数组的元素;
  2. thisArg: 可选。使用 callback 函数内 this 值。

示例:

const arr = [1, 2, 3];
const newArr = arr.map(item => item * 2);
console.log(newArr); // 输出 [2, 4, 6]

filter()

语法:

const newArray = arr.filter(callback(element[, index[, array]])[, thisArg])

参数:

  1. callback: 必须。测试是否符合条件的函数,接收当前元素、可选的索引和数组。返回 true 表示该元素被保留,返回 false 表示该元素被过滤;
  2. thisArg: 可选。在执行回调函数时,用于指定 this 的值。

示例:

const arr = [2, 4, 5, 7, 10];
const newArr = arr.filter(item => item % 2 == 0);
console.log(newArr); // 输出 [2, 4, 10]

some()

语法:

const test = arr.some(callback(element[, index[, array]])[, thisArg])

参数:

  1. callback: 必须。测试数组中的每个元素是否符合条件函数,接收当前元素、可选的索引和数组。返回 true 表示找到符合条件的元素,停止迭代;
  2. thisArg: 可选。在执行回调函数时,用于指定 this 的值。

示例:

const arr = [1, 2, 3, 4, 5];
const test = arr.some(item => item > 3);
console.log(test); // 输出 true

every()

语法:

const test = arr.every(callback(element[, index[, array]])[, thisArg])

参数:

  1. callback: 必须。测试数组中的每个元素是否符合条件函数,接收当前元素、可选的索引和数组。返回 true 表示继续迭代,返回 false 表示停止迭代;
  2. thisArg: 可选。在执行回调函数时,用于指定 this 的值。

示例:

const arr = [2, 4, 8];
const test = arr.every(item => item % 2 == 0);
console.log(test); // 输出 true

以上就是JavaScript数组中的5种迭代方法的完整攻略,希望对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript数组的5种迭代方法 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • JS数据类型判断的几种常用方法

    一、题目背景在JavaScript编程中,我们经常需要对数据的类型进行判断,以便进行不同的操作。本文详细讲解了JS数据类型判断的几种常用方法。 二、常用方法1. typeof 运算符这是最常用的判断数据类型的方式。它可以返回一个字符串,表示操作数的类型。它可以判断基本数据类型、“function”和“undefined”类型,但不能判断具体的引用类型。使用方…

    JavaScript 2023年5月27日
    00
  • jQuery怎么解析Json字符串(Json格式/Json对象)

    当我们从前端请求数据时,服务端一般都会返回JSON格式的数据。为方便取出其中的关键数据,我们需要将其解析成JSON对象,并通过jQuery对其进行操作。 1. 解析JSON字符串 当我们接收到服务端返回的JSON格式的字符串时,需要使用JSON.parse()方法将其转换为JSON对象。示例如下: var jsonStr = ‘{"name&quo…

    JavaScript 2023年5月27日
    00
  • JavaScript学习点滴 call、apply的区别

    讲解“JavaScript学习点滴 call、apply的区别”的完整攻略如下: 一、call和apply的概念 在Javascript中,所有对象都可以调用call和apply方法,它们的作用都是改变函数体内this的指向。两者的区别在于传入参数的形式不同。 call和apply都是定义在Function.prototype上的方法,因此可以被所有的函数对…

    JavaScript 2023年6月10日
    00
  • JavaScript错误处理try..catch…finally+涵盖throw+TypeError+RangeError

    JavaScript错误处理在应用开发中是一个非常重要而且必不可少的技能。try..catch..finally是JavaScript中处理错误的常用方式,而throw、TypeError和RangeError是常见的JavaScript错误类型。以下是完整的攻略: JavaScript错误处理try..catch..finally try..catch..…

    JavaScript 2023年5月28日
    00
  • js前端解决跨域的八种实现方案

    下面是详细的“js前端解决跨域的八种实现方案”的攻略。 什么是跨域 浏览器出于安全考虑,不允许跨域访问数据。例如,a.com下一个网页,可以轻松访问a.com下其他网页中的数据。但是,如果想要访问b.com下的数据,就需要进行跨域访问。跨域指的是指向不同域名的请求。比如,不同域名之间的交互访问就算是跨域访问。 前端跨域解决方案 1. JSONP JSONP(…

    JavaScript 2023年5月27日
    00
  • JavaScript中Function()函数的使用教程

    下面就为大家详细讲解JavaScript中Function()函数的使用教程。 一、什么是Function()函数 Function()函数是JavaScript中的一种内置函数,它用来创建一个函数对象。在JavaScript中,函数也是对象,因此它们可以像其他对象一样传递、存储和处理。 二、Function()函数的基本语法 function functi…

    JavaScript 2023年5月27日
    00
  • 详解Vue 数据更新了但页面没有更新的 7 种情况汇总及延伸总结

    让我来为你详细讲解“详解Vue 数据更新了但页面没有更新的 7 种情况汇总及延伸总结”。 1. 确认数据更新 首先,如果你发现Vue数据更新了但页面没有更新,应该先确保数据确实发生了改变。可以使用一些 Vue.js 开发者工具(比如 vue-devtools)来检查组件的数据是否确实发生了变化。 2. 检查 Vue 模板语法 在 Vue 模板语法中,有些写法…

    JavaScript 2023年6月11日
    00
  • js 用于检测类数组对象的函数方法

    检测类数组对象的函数方法主要用于确定一个对象是否具有数组的特性,例如可以迭代、可以使用数组的方法等等。下面是几种常见的用于检测类数组对象的函数方法: 1. 常规判断方法 可以通过判断对象是否具有“length”属性以及“splice”、“push”等数组方法来确定它是否为类数组对象。 function isArrayLike(obj) { return ob…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部