首页 > 编程语言 > 详细

数组(Array)的常用方法(reduce)

时间:2020-03-02 12:56:42      阅读:47      评论:0      收藏:0      [点我收藏+]

reduce

数组通过此方法,可以实现将每一项叠加称为一项。

使用:sum = arr.reduce(fun, start);

其中,fun为一个方法,接收四个参数,分别为

  pre:初始值或者上一次叠加(计算)结果值

  cur:当前项的值

  index:当前项的index

  arr:原数组

其中,start为叠加计算定义类型,并且为初始值,此值可以根据实际情况设置为任意值(看例子2)。

最终返回结果(sum)。

例子1:

const arr = [5, 10, 15];
console.log(‘start‘); const sum = arr.reduce((pre, cur, index, arr)=>{
  console.log(pre, cur, index); return pre + cur; }, 0);
console.log(‘end‘);
console.log(‘sum:‘, sum);

// 打印结果分别为:
  start
  5, 10, 1
  15, 15, 2
  end
  sum: 30

例子2:

const arr = [
    {
        name: ‘zs‘,
        score: 88
    }, 
    {
        name: ‘ls‘,
        score: 90
    },
    {
        name: ‘ww‘,
        score: 80
    }
];
const sum = arr.reduce((pre, cur) =>{
    return pre + cur.score;
}, 0);
console.log(‘sum: ‘, sum);
// sum: 258


// 初始值可设置成任意值
const sum1 = arr.reduce((pre, cur)=>{
  return pre + cur.score;
}, -10);
console.log(‘sum1: ‘, sum1);
// sum1: 248


// 初始值可设置为任意类型
const re = arr.reduce((pre, cur)=>{
  pre[cur.name] = cur.score;
  return pre;
}, {});
console.log(‘re: ‘, re);
//re: {zs: 88, ls: 90, ww: 80}

 

数组(Array)的常用方法(reduce)

原文:https://www.cnblogs.com/jing5990/p/12394548.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!