reduce方法我之前都整理了知识点,不懂的可以看一下我之前的知识点,这次我们是整理了一些关于用reduce方法进行的一些对于数组的处理
1. reduce()求数组项之和
var arr = [3, 9, 4, 3, 6, 0, 9];
var sum = arr.reduce(function (prev, cur) {
return prev + cur;
},0);
console.log(sum);
 
2. reduce()求数组项最大值
var arr = [3, 9, 4, 3, 6, 0, 9];
var max = arr.reduce(function (prev, cur) {
return Math.max(prev, cur);
});
console.log(max);
 
3. reduce()实现数组去重
indexOf() 返回值都是数组中元素所在的下标,如果没有找到则返回-1
var arr = [3, 9, 4, 3, 6, 0, 9];
var newArr = arr.reduce(function (prev, cur) {
prev.indexOf(cur) === -1 && prev.push(cur);
return prev;
}, []);
console.log(newArr);
 
实现原理:
1 初始化一个空数组
2 将需要去重处理的数组中的第1项在初始化数组中查找,如果找不到(空数组中肯定找不到),就将该项添加到初始化数组中
3 将需要去重处理的数组中的第2项在初始化数组中查找,如果找不到,就将该项继续添加到初始化数组中
4 ……
5 将需要去重处理的数组中的第n项在初始化数组中查找,如果找不到,就将该项继续添加到初始化数组中
6 将这个初始化数组返回
 
很多的知识点 我已经整理了很多次了  都有详细的解答哦   (づ ̄ 3 ̄)づ~
 
 
 

最新文章

  1. toast组件小结
  2. CPU过高的排查方法
  3. js判断中文
  4. [蓝牙] 3、 剖析BLE心率检测工程
  5. 【iOS】The differences between Class Extension and Header File 类扩展与头文件的区别
  6. MVC。Action方法,常用的返回类型有几种?
  7. android中ADT和SDK的关系(转)
  8. cf466B Wonder Room
  9. 上架app被拒原因总结
  10. Swift语言指南(六)--可选值
  11. java 中Map 使用
  12. java.lang.IllegalArgumentException: Document base E:\Eclipse\workspace\.metadata\.plugins\org.eclips
  13. 爬虫(五)requests模块2
  14. C++如何获取当前路径下所有文件的文件名
  15. 月薪15k的测试员需要学习什么技术?
  16. netty的对象传输
  17. 9.12 h5日记
  18. Android -- Property Animation
  19. Unity特殊文件夹详解
  20. Linux安装vsftpd

热门文章

  1. When 表达式 kotlin(9)
  2. spring boot知识清单
  3. When Database Sharding is Appropriate DATABASE SHARDING
  4. android手机使用Fiddler
  5. JavaScript(2)——网页解析过程
  6. python-https状态码
  7. react中component存在性能问题
  8. python网络应用篇
  9. 使用Zabbix进行IPMI监控
  10. HDWIKI6.0后台SQL写shell