上一篇文章中我们了解了创建一个具有可变数量的数组的方法,请看《js如何创建一个具有可变数量的数组》。这次我们来了解一下数组中的元素实现累加效果的方法,有需要的可以参考参考。
首先我们来看一个小例子。
我们现在有这样一个问题,已知,我们有一个包含1,2,3,4这四个元素的数组,现在我们想知道这个数组中元素的总和是多少,该如何计算呢?如果加上元素two呢?这总和还是一样的吗?
var arr = new Array(7); arr[0] = 1;arr[1] = 2;arr[2] = 3;arr[3] = 4;console.log(arr);const reducer = (accumulator, currentValue) => accumulator + currentValue;console.log(arr.reduce(reducer));var nums = new Array(7); nums[0] = 1;nums[1] = 2;nums[2] = 3;nums[3] = 4;nums[4] = "two";console.log(nums);console.log(nums.reduce(reducer));
登录后复制
这个小例子的结果是
我们可以结合题目观察一下结果,1,2,3,4四个元素累加起来的结果是10,而1,2,3,4和two这五个元素累加的结果是10two。这表明,在这个方法中,如果出现英文的话,英文是不会被过滤的,会直接与数字进行运算。
了解这么多之后,我们去具体看看这个方法吧。
reduce() 方法对数组中的每个元素执行一个由我们提供的reducer函数(升序执行),将其结果汇总为单个返回值。
我们来看看这个方法的语法吧。
数组名称.reduce(执行的函数(累计器的返回值,正在处理的元素,当前元素索引,数组,第一次调用函数时的值)
登录后复制
reduce为数组中的每一个元素依次执行callback函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:
accumulator 累计器
currentValue 当前值
currentIndex 当前索引
array 数组
注意:如果没有提供第一次调用函数时的值,reduce 会从索引1的地方开始执行 callback 方法,跳过第一个索引。如果提供第一次调用函数时的值,从索引0开始。
就说到这里了,有需要的可以看:javascript基础教程
以上就是js数组中的元素如何实现累加效果的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2708867.html