js的reduce方法,改变头等函数

头等函数:把编程变成了类似搭积木的方式编码,可以使用很少的代码,实现强大的功能函数。

eg:

getTotal:数组的求和运算。

var myArray = [1,2,3,4];

var add = function(a,b){

  return a + b;

}

var getTotal = function(arr){

  retuurn arr.reduce(add);

}

getTotal(myArray);====>10

把add函数作为参数,传递给reduce函数,可以组成更加好用的复合函数,成就了更高层次的通用,同时避免了不必要的重复。

时间: 2024-08-09 02:19:39

js的reduce方法,改变头等函数的相关文章

js的reduce方法

reduce()方法接受一个函数进行累加计算(reduce()对于空数组是不会执行回调函数的) 使用语法: array.reduce(function(total, currentValue, currentIndex, arr), initialValue) total:初始值,或者计算结束后返回的返回值(必需) currentValue:当前元素(必需) currentIndex:当前元素的索引 arr:当前元素所属的数组对象 假如在reduce的回调函数里面没有返回值时 var arr =

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

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

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数组遍历方法总结

数组遍历方法 1.for循环 使用临时变量,将长度缓存起来,避免重复获取数组长度,当数组较大时优化效果才会比较明显. for(j = 0,len=arr.length; j < len; j++) { } 2.foreach循环 遍历数组中的每一项,没有返回值,对原数组没有影响,不支持IE //1 没有返回值 arr.forEach((item,index,array)=>{ //执行代码 }) //参数:value数组中的当前项, index当前项的索引, array原始数组: //数组中有

es 5 数组reduce方法记忆

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

JavaScript - reduce方法 (Array)

JavaScript - reduce方法 (Array) 解释:reduce() 方法接收一个函数作为累加器(accumulator),数组 中的每个值(从左到右)开始合并,最终为一个值. 语法:arr.reduce(callback,[initialValue]) 参数: callback:执行数组中每个值的函数,包含四个参数 previousValue:上一次调用回调返回的值,或者是提供的初始值(initialValue) currentValue:数组中当前被处理的元素 index:当前

常用JS对象的方法总结

http://www.cnblogs.com/Yfling/p/6681207.html String 方法 描述 charAt() 返回在指定位置的字符. charCodeAt() 返回在指定的位置的字符的 Unicode 编码. concat() 连接字符串. indexOf() 检索字符串. match() 找到一个或多个正则表达式的匹配. replace() 替换与正则表达式匹配的子串. search() 检索与正则表达式相匹配的值. slice() 提取字符串的片断,并在新的字符串中返

数组reduce方法以及高级技巧

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