Array数组对象中的forEach、map、filter及reduce详析

Array数组对象中的forEach、map、filter及reduce详析

对于开发者而言,Array是非常常用的数据类型之一。在Array中,有四个方法:forEach、map、filter及reduce。下面我们将逐一深入剖析它们的用法及使用场景。

forEach

forEach方法的作用是:用于遍历数组中的每一个元素,并对其进行操作。语法如下:

array.forEach(callback(currentValue [, index [, array]])[, thisArg])

参数说明:

  • callback:为数组中每个元素执行的回调函数
  • currentValue:数组中正在处理的元素
  • index:当前元素在数组中的下标
  • array:数组本身
  • thisArg:当执行回调函数时,使用的 this 值。可选参数。

示例说明:

var numArr = [1, 2, 3, 4, 5];
numArr.forEach(function (num, index, arr) {
  console.log('第', index + 1, '个元素是', num, ',所属数组为', arr);
});

输出结果:

第 1 个元素是 1 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 2 个元素是 2 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 3 个元素是 3 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 4 个元素是 4 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 5 个元素是 5 ,所属数组为 [ 1, 2, 3, 4, 5 ]

map

map方法的作用是:将数组中的元素按照一定的规则转换,并生成一个新的数组。语法如下:

array.map(callback(currentValue [, index [, array]])[, thisArg])

参数说明:

  • callback:转换数组中每个元素的回调函数
  • currentValue:数组中正在处理的元素
  • index:当前元素在数组中的下标
  • array:数组本身
  • thisArg:当执行回调函数时,使用的 this 值。可选参数。

示例说明:

var numArr = [1, 2, 3, 4, 5];
var strsArr = numArr.map(function (num) {
  return '数字' + num;
});
console.log(strsArr);

输出结果:

[ '数字1', '数字2', '数字3', '数字4', '数字5' ]

filter

filter方法的作用是:从数组中筛选出符合条件的元素并生成一个新的数组。语法如下:

array.filter(callback(currentValue [, index [, array]])[, thisArg])

参数说明:

  • callback:对数组中每个元素进行测试的回调函数
  • currentValue:数组中正在处理的元素
  • index:当前元素在数组中的下标
  • array:数组本身
  • thisArg:当执行回调函数时,使用的 this 值。可选参数。

示例说明:

var numArr = [1, 2, 3, 4, 5];
var oddNums = numArr.filter(function (num) {
  return num % 2 !== 0;
});
console.log(oddNums);

输出结果:

[ 1, 3, 5 ]

reduce

reduce方法的作用是:对数组中的元素进行逐个操作,并将它们汇总成一个值。语法如下:

array.reduce(callback(accumulator, currentValue [, index [, array]])[, initialValue])

参数说明:

  • callback:作用在数组中每个元素上的回调函数
  • accumulator:回调函数的返回值,在下一次调用中作为上一次回调函数的结果使用
  • currentValue:数组中正在处理的元素
  • index:当前元素在数组中的下标
  • array:数组本身
  • initialValue:用作第一次调用callback函数时的第一个参数的值。可选。

示例说明:

var numArr = [1, 2, 3, 4, 5];
var sum = numArr.reduce(function (prev, curr) {
  return prev + curr;
});
console.log(sum); // 15

以上就是Array数组对象中的forEach、map、filter及reduce详析的完整攻略,希望对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Array数组对象中的forEach、map、filter及reduce详析 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • 微信小程序表单验证功能完整实例

    下面是关于“微信小程序表单验证功能完整实例”的详细攻略,包含了代码实现和示例说明。 1. 简介 在微信小程序开发过程中,我们经常需要使用表单来收集用户数据。为了保证数据的有效性和安全性,我们需要对表单数据进行验证。下面我们就来介绍一种微信小程序表单验证功能的完整实例。 2. 实现步骤 2.1 HTML 结构 首先,我们需要在 HTML 中添加表单元素,并设置…

    JavaScript 2023年6月10日
    00
  • 详解JS中统计函数执行次数与执行时间

    首先我们需要明确一下,统计函数执行次数和执行时间是一个常见的需求,它有助于我们优化代码,找到潜在的性能瓶颈,提高应用程序的性能。那么,在JS中如何统计函数执行次数和执行时间呢? 统计函数执行次数 我们可以定义一个计数器来记录函数执行的次数。例如,下面的代码演示了如何统计函数foo的执行次数: let count = 0; function foo() { /…

    JavaScript 2023年5月27日
    00
  • 深入理解JavaScript事件机制

    深入理解JavaScript事件机制 JavaScript的事件机制为我们在网页中开发交互体验提供了强大的支持。要深入理解JavaScript事件机制包括以下三个方面: 事件类型 事件模型 事件处理函数 事件类型 JavaScript中定义了很多事件类型,例如鼠标相关的事件类型包括: click 鼠标单击事件 dblclick 鼠标双击事件 mousedow…

    JavaScript 2023年6月11日
    00
  • Javascript Array concat 方法

    以下是关于JavaScript Array concat方法的完整攻略。 JavaScript Array concat方法 JavaScript Array concat方法用于将两个或多个数组合并成一个新数组。该方法不会改变原始数组,而是返回一个新的数组。 下面是一个使用concat方法的示例: var arr1 = [1, 2, 3]; var arr…

    JavaScript 2023年5月11日
    00
  • 学习JavaScript设计模式之代理模式

    学习JavaScript设计模式之代理模式 什么是代理模式 代理模式是一种结构型设计模式,可以为其他对象提供一种代理以控制对这个对象的访问。 代理模式允许在不改变原始对象行为的情况下,通过代理对象来控制或修改对象的行为。这种方式提供了一种更加灵活和安全的访问对象的方式。 代理模式由三个部分组成,分别是目标对象(即要被代理的对象)、代理对象和客户端。 代理模式…

    JavaScript 2023年6月11日
    00
  • js 函数的执行环境和作用域链的深入解析

    JS 函数的执行环境和作用域链的深入解析 1. 执行环境 在 JavaScript 中,执行环境是指一段可执行代码的运行环境,有全局执行环境和函数执行环境两种。 全局执行环境 全局执行环境是在浏览器中直接打开网页时就会创建的执行环境,它是最顶层的环境。全局执行环境中定义的变量和函数被称为全局变量和全局函数,它们可以在程序的任何地方被访问和修改。 示例代码: …

    JavaScript 2023年6月10日
    00
  • JavaScript实现简单获取当前网页网址的方法

    获取当前网页网址是JavaScript中的一个基础操作,可以通过location对象的属性来实现。下面是获取当前网页网址的几个常用方法: 1. location.href 利用location对象的href属性可以获取当前网页的完整URL地址,包括协议、主机名、端口号、路径和查询字符串等信息。 var currentUrl = location.href; …

    JavaScript 2023年6月11日
    00
  • 用正则获取指定路径文件的名称

    获取指定路径下文件的名称通常会用到正则表达式,下面是获取指定路径下某类文件名的完整攻略: 步骤一:指定路径 在使用正则表达式之前,需要指定要查找的文件所在的路径。可以使用Python内置的os库函数,比如os.getcwd()获取当前路径,或者os.chdir()改变当前目录路径。 示例代码: # 获取当前路径 import os path = os.get…

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