函数式编程的初次见面
Posted SeriousLose
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数式编程的初次见面相关的知识,希望对你有一定的参考价值。
function double(arrIn) {
let arrOut = [];
for (let i = 0; i < arrIn.length; i++) {
arrOut[i] = arrIn[i] * 2;
}
return arrOut;
}
function increment(arrIn) {
let arrOut = [];
for (let i = 0; i < arrIn.length; i++) {
arrOut[i] = arrIn[i] + 1;
}
return arrOut;
}
function foo(arrIn) {
return increment(double(arrIn));
}
foo([1,2,3])
上边的三个函数,进行优化后
let double = (arrIn)=>arrIn.map((item) => item * 2);
let increment= (arrIn)=>arrIn.map((item) => item + 1);
let foo = (arrIn)=>increment(double(arrIn));
发现了组合函数,最终结果
let double = (arrIn)=>arrIn.map((item) => item * 2);
let increment= (arrIn)=>arrIn.map((item) => item + 1);
let foo = (f, g) => (x => f(g(x)));
foo(increment,double)([1,2,3])
所以有些时候,每个方法好好思考下,如何简化,能有更优的写法。希望大家每个方法都好好的思考哟。
欢迎关注
点个在看,支持小编
以上是关于函数式编程的初次见面的主要内容,如果未能解决你的问题,请参考以下文章