JavaScript reduce的基本用法详解

JavaScript reduce的基本用法详解

reduce() 方法通过指定函数对数组元素进行累积计算,可将数组简化为单个值。它接收一个回调函数作为参数,该回调函数需要返回一个累积的结果。

基本语法

array.reduce(function(total, currentValue, currentIndex, arr), initialValue)

参数说明

  • total: 必需。初始值,或者计算结束后的返回值。
  • currentValue: 必需。当前元素。
  • currentIndex: 可选。当前元素的下标。
  • arr: 可选。当前数组。
  • initialValue: 可选。传递给函数的初始值。

返回值

函数返回计算后的结果。

示例1:数组求和

const nums = [1, 2, 3, 4, 5];
const sum = nums.reduce(function(total, currentValue){
    return total + currentValue;
}, 0);
console.log(sum);  // 15

在这个案例中,初始值为0(累加器),回调函数将进行每个元素的累加计算,最终返回总和。

示例2:数组对象计算总金额

const items = [
  { name: 'item1', price: 10, quantity: 2 },
  { name: 'item2', price: 5, quantity: 5 },
  { name: 'item3', price: 20, quantity: 1 }
];
const totalPrice = items.reduce(function(total, currentItem) {
  return total + currentItem.price * currentItem.quantity;
}, 0);
console.log(totalPrice); // 60

在上面的示例中,我们要计算items数组中所有商品的总金额。回调函数中的total表示初始值,currentItem表示当前元素,通过将每一个currentItem的价格和数量进行相乘,累加到total中,最终得到总金额。

以上是reduce方法的基本用法,希望对你有所帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript reduce的基本用法详解 - Python技术站

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

相关文章

  • 如何判断元素是否为HTMLElement元素

    如果要判断一个元素是否为 HTMLElement 元素,我们可以使用 JavaScript 自带的 instanceof 方法。 示例 1:使用 instanceof 方法判断元素是否为 HTMLElement 元素 // 获取 HTML 元素 const el = document.querySelector(‘div’); // 判断元素是否为 HTML…

    JavaScript 2023年6月10日
    00
  • WEB 浏览器兼容 推荐收藏

    下面是关于WEB浏览器兼容推荐收藏的完整攻略。 什么是WEB 浏览器兼容? WEB浏览器兼容是指一种 WEB 站点可被多种浏览器在不同操作系统环境下展现,且表现基本一致的能力。WEB的兼容性是 WEB 应用开发中最为重要的成果之一,无论是在美观还是用户体验上都占据重要地位。 为什么需要WEB 浏览器兼容? 随着不同操作系统和不同版本的浏览器的出现,WEB 在…

    JavaScript 2023年6月10日
    00
  • JS 字符串特殊字符全部替换空

    1、方法 const formatStr = (str) => { const value = str.replace( /[`:_~!@#$%^&*() \+ =<>?”{}|, \/ ;’ \\ [ \] ·~!@#¥%……&*()—— \+ ={}|《》?:“”【】、;‘’,。、-]/g, ”, ) return v…

    JavaScript 2023年4月18日
    00
  • javascript匀速运动实现方法分析

    JavaScript匀速运动实现方法分析 什么是匀速运动? 匀速运动是指物体在单位时间内移动的距离相等,即物体每秒钟运动的速度始终相同。 如何用 JavaScript 实现匀速运动? 在 JavaScript 中实现匀速运动需要使用定时器 setInterval 和动画函数 requestAnimationFrame。具体步骤如下: 获取需要运动的元素和目标…

    JavaScript 2023年6月11日
    00
  • JavaScript数组去重的五种方法

    下面我将详细讲解“JavaScript数组去重的五种方法”的完整攻略,包含以下五种去重方法: 1. 利用Set去重 const arr = [1, 2, 3, 3, 4, 4, 5]; const arrUnique = […new Set(arr)]; console.log(arrUnique); // [1, 2, 3, 4, 5] 利用Set的特…

    JavaScript 2023年5月27日
    00
  • JavaScript函数模式详解

    JavaScript函数模式详解 JavaScript函数模式是JavaScript语言中最常用的设计模式之一,在前端工程开发中具有很高的实用价值。本文将详细介绍JavaScript函数模式的各种形式以及使用场景。 普通函数 JavaScript中最基本的函数形式是普通函数,使用function关键字定义。普通函数可以通过函数名调用,也可以作为参数传递给其他…

    JavaScript 2023年5月18日
    00
  • js实现在字符串中提取数字

    实现在字符串中提取数字这个需求,可以用正则表达式来完成。下面是实现这个需求的攻略: 正则表达式 正则表达式是一种用于字符串匹配的表达式,用来描述一类符合某个语法规则的字符串。在这个需求中,我们需要提取字符串中的数字,可以使用正则表达式匹配数字来完成。 下面是匹配数字的正则表达式,可以用来匹配整数或小数: /([-+]?[0-9]+\.?[0-9]*)|([-…

    JavaScript 2023年5月28日
    00
  • Javascript生成器(Generator)的介绍与使用

    Javascript生成器(Generator)的介绍与使用 简介 Javascript生成器是一种特殊类型的函数,它允许我们暂停函数的执行并返回一个中间结果,稍后再继续执行并返回更多的中间结果。在实际应用中,生成器通常用于处理大量数据或者生成一系列的异步任务。 定义 我们可以使用函数声明或函数表达式来定义一个生成器。当定义一个生成器时,我们需要在函数名后面…

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