【FreeCodeCamp】面向对象及函数方法编程-244 回调函数详解

本文详细介绍了JavaScript的Map方法,如何利用它迭代数组并创建新数组,同时阐述了回调函数的概念、用途及其在Map方法中的作用。通过实例展示了如何在不改变原始数组的情况下,使用map方法为数组元素增加特定值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[244 Iterate over Array with map]

问题链接:https://w.freecodecamp.cn/challenges/condense-arrays-with-reduce
参考链接:JavaScript Array map() 方法

Map方法迭代数组

1.问题描述

map 方法可以方便的迭代数组,例子:

    var timesFour = oldArray.map(function(val){
      return val * 4;
    });

map 方法会迭代数组中的每一个元素,并根据回调函数来处理每一个元素,最后返回一个新数组。注意,这个方法不会改变原始数组。

在我们的例子中,回调函数只有一个参数,即数组中元素的值 (val 参数) ,但其实,你的回调函数也可以支持多个参数,譬如:元素的索引index、原始数组arr。

使用 map 方法来为 oldArray 中的每一项增加3,并且在 newArray 中保存它们。 oldArray 不应该被改变。


2.解决方案

    var oldArray = [1,2,3,4,5];
    // 只能在这一行下面写代码
    var newArray = oldArray.map(function(val){return val +3;});

3.问题解释

  1. 回调函数

A callback is a function that is passed as an argument to another function and is executed after its parent function has completed。

字面理解回调就是一个作为实参传入另一函数的函数,会在父函数执行完成后再执行。

主要用途:目前主要用于耗时操作,比如ajax请求或者文件处理等

  1. Map方法解释
  • Map不会修改原始数组,会返回一个修改后的新数组,数组中的元素为原始数组元素调用函数处理后的值
  • Map方法按照原始数组元素顺序依次处理
  • 不会对空数组进行检测
  1. 参数说明
array.map(function(currentValue,index,arr), thisValue)
  • currentValue
    必须、当前元素值
  • index
    可选、当前元素索引
  • arr
    可选、当前元素所属的数组对象
  • thisValue
    可选,此对象将作为该执行回调时使用,传递给函数用于“this”。如果省略或传入null、undefined那么回调函数使用的this为全局对象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值