• 描述一下 Array.forEach() 循环和 Array.map() 方法之间的主要区别


    Array.forEach() 和 Array.map() 都是 JavaScript 数组中常用的方法,但它们之间有一些重要的区别:

    返回值:
        forEach():没有返回值,它只是对数组中的每个元素执行提供的函数。
        map():返回一个新的数组,其元素是通过对原数组的每个元素执行提供的函数后的结果。
    
    内部实现:
        forEach():只是遍历数组,执行回调函数,不会改变原数组。
        map():会创建一个新的数组,并将回调函数的返回值填充到新数组中,原数组不会被改变。
    
    常见用途:
        forEach():适用于需要对数组元素执行某些操作,但不需要返回新数组的情况,例如打印数组元素、更新 DOM 等。
        map():适用于需要基于原数组创建新数组的情况,例如数组转换、数据预处理等。
    
    链式调用:
        forEach():由于没有返回值,因此不能够在 forEach() 之后直接链式调用其他数组方法。
        map():由于返回一个新数组,因此可以在 map() 之后继续链式调用其他数组方法,如 filter()、reduce() 等。
    

    举个例子,假设有一个数组 [1, 2, 3, 4, 5],使用 forEach() 将其每个元素乘以 2:

    
    const arr = [1, 2, 3, 4, 5];
    arr.forEach(num => console.log(num * 2)); // 输出 2 4 6 8 10
    

    而使用 map() 将其每个元素乘以 2 并返回一个新数组:

    const arr = [1, 2, 3, 4, 5];
    const doubledArr = arr.map(num => num * 2); // doubledArr 为 [2, 4, 6, 8, 10]
    
    

    forEach() 和 map() 都是非常有用的数组方法,但在具体使用时需要根据需求来选择合适的方法。

  • 相关阅读:
    Mybatis映射文件概述与增删改查操作
    SpringData Hibernate JPA 使用案例 案例 (一)
    c++ lambda
    AUTOSAR汽车电子嵌入式编程精讲300篇-汽车 CAN FD 总线应用研究
    全文检索-ElasticSearch
    GBASE 8s 自定义存储过程和函数示例
    [NOIP1999 普及组] 导弹拦截
    Java知识点--IO流(上)
    UnrealEngine KeyWords,修饰变量函数
    Fiddler Everywhere 3.2.1 Crack
  • 原文地址:https://blog.csdn.net/qq_36538012/article/details/139406486