博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Curry的js实现
阅读量:7006 次
发布时间:2019-06-27

本文共 940 字,大约阅读时间需要 3 分钟。

hot3.png

是函数式变成的基础之一,js写函数式常用的工具之一,此处试着实现一个 函数工具

var curry=function(f){    var fun=""    var len= f.length  //参数长度    var args=[]        //参数保存用于延迟执行的时候添加参数    return fun= function (){                //延迟执行函数            for(var i=0;i

函数组合用于将多个函数组合成一个函数,流式的处理数据

var compose = function() {    var args=arguments;     //获取所有函数    return function(x) {        var result=null;        for(var i=args.length;i>0;i--){ //反转函数            if(i==args.length){                result=  args[i-1].call(null,x)            }else{                result=  args[i-1].call(null,result)            }        }        return result;    };};

测试:

var gg=1234;function  Sum(a,b,c,d,e,f,g,h,j){    return gg+a+b+c+d+e+f+g+h+j;}var xxx=curry(Sum);console.log(xxx(1));      //[Function]console.log(xxx(2));      //[Function]console.log(xxx(4,5,6));  //[Function]console.log(xxx(7,8,9));  //[Function]console.log(xxx(10));     //52

 

转载于:https://my.oschina.net/hunjixin/blog/794475

你可能感兴趣的文章
浅谈HTTPS以及Fiddler抓取HTTPS协议
查看>>
Hadoop使用Java进行文件修改删除操作
查看>>
奇虎360Java笔试题
查看>>
git常用命令速查表【转】
查看>>
[转]Python yield 使用浅析
查看>>
Wpf Binding.Path设置
查看>>
jfinal控制器添加多个拦截器
查看>>
跟着百度学PHP[14]-初识PDO数据库抽象层
查看>>
小豆包的学习之旅:机器人定位
查看>>
好程序猿训练营,让你成为名副事实上的好程序猿
查看>>
有关一道printf 的面试题
查看>>
#AOS应用基础平台# 实现了在用户权限范围内自己定义的快捷菜单的导航展示
查看>>
[转]ssh中如何实现定时任务(spring对quartz的支持)
查看>>
mysql查询表的字符集
查看>>
读研以来的一些感想:名校好在哪里?
查看>>
大数据中心的业务研发路线
查看>>
rtmp推流开源代码备注一下
查看>>
SQLServer 日期函数大全 SQLServer 时间函数大全
查看>>
program与module
查看>>
软件架构师应该知道的97件事
查看>>