数组 reduce

var arr = [1,2,3,4,5];
// reduce 不会改变原数组

// 两两相加

var sum = arr.reduce(function(x, y) {
    return x+y;
});

// 判断谁最大

var max = arr.reduce(function(x, y) {
    return x > y ? x : y;
});

console.log(sum) 15
console.log(max) 5
时间: 2024-08-28 19:48:52

数组 reduce的相关文章

es 5 数组reduce方法记忆

reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始合并,最终为一个值. 概念:对数组中的所有元素调用指定的回调函数.该回调函数的返回值为累积结果,并且此返回值在下一次调用该回调函数时作为参数提供. 语法: array1.reduce(callbackfn[, initialValue]) 参数: 参数 定义 array1 必需.一个数组对象. callbackfn 必需.一个接受最多四个参数的函数.对于数组中的每个元素,reduce 方法都会调

JavaScript学习笔记:数组reduce()和reduceRight()方法

很多时候需要累加数组项的得到一个值(比如说求和).如果你碰到一个类似的问题,你想到的方法是什么呢?会不会和我一样,想到的就是使用for或while循环,对数组进行迭代,依次将他们的值加起来.比如: var arr = [1,2,3,4,5,6]; Array.prototype.sum = function (){ var sumResult = 0; for (var i = 0; i < this.length; i++) { sumResult += parseInt(this[i]);

数组reduce和map方法

1.有一个长度为100的数组,请以优雅的方式求出该数组的前10个元素之和 var a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],sum = 0; sum = a.slice(0, 10).reduce(function(pre, current) { return pre + current;}); console.log(sum); //55 2.不使用loop循环,创建一个长度为100的数组,并且每个元素的值等于它的下标. v

JavaScript算法题(一) &amp;&amp; 数组reduce使用

可参考Array.reduce用法 1. 请编写getMissingElement函数,返回给定数组中缺少的元素(数组里的元素为0~9,只会缺失一个). Example: getMissingElement( [0, 5, 1, 3, 2, 9, 7, 6, 4] ) // returns 8 getMissingElement( [9, 2, 4, 5, 7, 0, 8, 6, 1] ) // returns 3 soluction: function getMissingElement(su

数组reduce方法以及高级技巧

基本概念: reduce()方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终为一个值. reduce为数组中的每一个元素依次执行回调函数.不包括数组中被删除或从未赋值的元素,接受两个参数.第一参数是一个回调函数,又接收四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用reduce的数组.第二个参数是作为第一次调用callback的第一个参数即初始参数. 语法: arr.reduce(callback, [initialValue]) * callbac

JS数组reduce()方法详解及高级技巧

1.语法 arr.reduce(callback,[initialValue]) reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组. callback (执行数组中每个值的函数,包含四个参数) 1.previousValue (上一次调用回调返回的值,或者是提供的初始值(initialValue)) 2.currentValue (数组中当前被处理的元素)

JS数组reduce()方法

arr.reduce(function(prev,cur,index,arr){...}, init); 或者 arr.reduce(function(prev,cur,index,arr){...},); arr 表示将要原数组: prev 表示上一次调用回调时的返回值,或者初始值 init; cur 表示当前正在处理的数组元素: index 表示当前正在处理的数组元素的索引,若提供 init 值,则索引为0,否则索引为1: init 表示初始值. 常用的参数只有两个:prev 和 cur.

JS 数组reduce()方法详解及高级技巧

1.语法 arr.reduce(callback,[initialValue]) reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组. callback (执行数组中每个值的函数,包含四个参数) 1.previousValue (上一次调用回调返回的值,或者是提供的初始值(initialValue)) 2.currentValue (数组中当前被处理的元素)

数组reduce()的使用

reduce()是这样定义的:reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值.需要注意的是reduce()的回调函数在数组为空数组的时候是不会执行的. reduce()可以接收两个参数,第一个参数是回调函数(必须的),这个回调函数有四个参数:total(初始值或者返回的值,必须).currentValue(当前操作的数组元素,必须).currentIndex(当前元素的索引,可选).arr(当前元素所属的数组,可选),第二个参数是设置回调函数的