reduce具体使用以及使用reduce,toString,flat进行数组降维
1.reduce在纯数组中应该如何使用
let arr = [1,2,3,4,5]
//prev上一个值,在首次开始循环的时候,依照初始值来定prev的值,这里初始值是0,curr代表当前循环项
let sum = arr.reduce((prev,curr)=>{return prev + curr
},0)
//sum 15
2.reduce在数组引用类型中的使用
let countIt = list.reduce((prev,curr) => {return prev + curr.count * curr.price
},0)
console.log(countIt);
3.利用reduce对数组进行扁平化
let arr2 = [[1, 2, 8], [3, 4, 9], [5, 6, 10]];
let res = arr2.reduce((prev,curr) => {prev.concat(curr)
},[])
console.log(res) //[1, 2, 8, 3, 4, 9, 5, 6, 10]
4.利用reduce对多维数组进行扁平化
const arr5 = [1, [2, [3, 4]]];
function flatten(arr){return arr.reduce((prev,curr) => {return prev.concat(Array.isArray(curr) ? flatten(curr) : curr)
},[])
}
console.log(flatten(arr5))
//当然 也可以用flat
//Infinity是多维数组 这里面也可以加数据 2,3就代表2维 3维
console.log(arr5.flat(Infinity));
//当然,也可以用toString
/* ES6 */toString降维为1,2,3,4然后用split转化为字符串数组,用map遍历每一项 +item把每一项从字符串变为数字
const flatten = (arr) => arr.toString().split(',').map((item) => +item);
const arr = [1, [2, [3, 4]]];
console.log(flatten(arr));
//[1,2,3,4]
reduce具体使用以及使用reduce,toString,flat进行数组降维相关推荐
- es6中reduce的用法_25个你不得不知道的数组reduce高级用法
背景 距离上一篇技术文章<1.5万字概括ES6全部特性>发布到现在,已经有整整4个月没有输出过一篇技术文章了.哈哈,不是不想写,而是实在太忙,这段时间每天不是上班就是加班,完全没有自己的时 ...
- java函数式编程归约reduce概念原理 stream reduce方法详解 reduce三个参数的reduce方法如何使用
java函数式编程归约reduce概念原理 stream reduce方法详解 reduce三个参数的reduce方法如何使用
- java8 stream reduce 方法用法 java stream reduce 方法使用方法
java8 stream reduce 方法用法 java stream reduce 方法使用方法 一.背景 在使用Stream的reduce方法时,发现该方法有 3个重载方法,分别是: 一个参数. ...
- python中reduce函数的运用_Python reduce函数
Python reduce函数教程 在 Python2 中,reduce 函数可以直接使用,在 Python3 中,reduce 函数使用之前需要使用 from functools import re ...
- js实现数组降维算法[不准用Array.prototype.flat的api]
js实现数组降维算法[不准用Array.prototype.flat的api] // target要降维的元素,n降维阶数,newArr存储结果的新数组 function f(target, n = ...
- 数组tostring方法_数组toString()方法以及JavaScript中的示例
数组tostring方法 JavaScript toString()方法 (JavaScript toString() method) toString() method is used to con ...
- python中reduce函数_Python中的reduce()函数
reduce()函数也是Python内置的一个高阶函数.reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接收 ...
- [五]java函数式编程归约reduce概念原理 stream reduce方法详解 reduce三个参数的reduce方法如何使用...
reduce-归约 看下词典翻译: 好的命名是自解释的 reduce的方法取得就是其中归纳的含义 java8 流相关的操作中,我们把它理解 "累加器",之所以加引号是因为他并不仅仅 ...
- python reduce函数filter_Python filter()及reduce()函数使用方法解析
一.filter() 在Python内建函数中,有一个和map()函数用法类似.却可以用来过滤元素的迭代函数,这个函数就是filter().它的函数原型是:filter(function,iteara ...
- python functools.reduce使用_Python的functools.reduce用法
python 3.0以后, reduce已经不在built-in function里了, 要用它就得from functools import reduce. reduce的用法 reduce(fun ...
最新文章
- Django基础—— 1.WEB框架介绍
- 网易云音乐TFBOYS线上演唱会破纪录,稳定线上体验如何实现?
- Unity 2017 Game Optimization 读书笔记(1)Scripting Strategies Part 1
- input 框 去掉下面的提示文字、提示选项
- Bundler和Minifier Visual Studio扩展
- CSS基本布局16例(原网页引自Owen Briggs)
- 两个月新增 80万行代码,Linux 内核维护为什么不会崩?
- http://channel9.msdn.com/Events/MIX
- java大小端在线转换_Java 大小端转换
- 主板usb接口全部失灵_usb接口没反应,主板usb接口全部失灵
- 推荐 :一小时建立数据分析平台
- NET::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK)
- Windows 10出现0xc0000225错误代码如何解决?
- 软件测试学习资料大全
- java 面试概念题 笔记
- 云豹智能发布全功能云霄DPU网卡,引领数据中心新趋势
- 看携程如何借助“预测式外呼”提高呼叫效率
- 如何访问kubernetes API?
- 计算机放音乐声音小在吗调,电脑放歌声音小怎么办
- java-JQuery的使用
热门文章
- 【论文】论文中的参考文献:国标GB/T 7714-2015文献类型与格式
- 近600个教学学习资料链接(zz)
- MATLAB中使用plotyy绘制双纵坐标图及坐标轴设置
- 4.68亿人信息泄露:2 块钱就能查你的身份证,还带照片!
- 编程实践精华总结集锦系列1: SpringBoot/Maven/IDEA/Java/Kotlin/Redis等等
- 学习s3c2440的随笔笔记
- uni-app本站点必须要开启JavaScript才能运行
- php写出个人所得税,PHP如何计算个人所得税
- tensorflow的交叉熵函数_张量流的代价函数和四个交叉熵函数,与,tensorflow,四种
- 300题 第七讲 零点定理与微分不等式