创建一个更简单的嵌套函数 [英] Create a simpler way of nesting functions

查看:154
本文介绍了创建一个更简单的嵌套函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  foo(bar(baz(hello)) )//函数地狱

理想情况是这样的

  var fbb = bind(foo,bar,baz)
foo(hello)

这是否存在?本机还是图书馆?



我翻阅了下划线绑定

解决方案

Underscore有 撰写 函数,它可以做你想做的事情:

  var composite = _.compose(foo,bar,baz); 

复合('hello');

function foo(a1){return'foo'>

< + a1;} function bar(a2){return'bar'+ a2;} function baz(a3){return'baz'+ a3;} alert(foo(bar(baz(hello)))); var composite = _.compose(foo,bar,baz); alert(composite('hello'));

 < script src =// cdnjs.cloudflare.com/ajax/libs/underscore.js/1.7.0/underscore-min.js>< / script>  


I'm looking to lower my overhead on code like this

foo(bar(baz("hello"))) // function hell

ideally something like this

var fbb = bind(foo, bar, baz)
foo("hello")

Does this exist? Native or library?

I looked through underscore and bind.

解决方案

Underscore has the compose function which will do what you want:

var composite = _.compose(foo, bar, baz);

composite('hello');

function foo(a1){
  return 'foo' + a1;
}		

function bar(a2){
  return 'bar' + a2;
}

function baz(a3){
  return 'baz' + a3;
}

alert(foo(bar(baz("hello"))));

var composite = _.compose(foo, bar, baz);

alert( composite('hello') );

<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.7.0/underscore-min.js"></script>

这篇关于创建一个更简单的嵌套函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆