中心思想
function first,data last
定义
高阶函数就是函数中可以传入另一个函数作为参数的函数。

通过代码理解
es6 yield
function *foo(){
yield 1;
yield 2;
yield 3;
return;
}
for(let v of foo()){
console.log(v);
}
// 1
// 2
// 3
loadsh
var wallet = _(assets).filter(ownedBy('me'))
.pluck('value')
.reduce(sum);
$json.get("/new/assets").success(function(data) {
assets.push.apply(assets, data); // 更新我的资金
wallet.value(); // 返回我钱包的最新的总额
});
ramdajs
var add= R.curry((x,y)=>x+y)
add(4,2) //6
add(4)(2) //6
var add4=add(4) //ƒ (t){return n.apply(this,arguments)}
add4(2) //6
add() // ƒ (t,r){return n.apply(this,arguments)}
参考:
知乎-高阶函数是个什么?
阮一峰-Ramda 函数库参考教程
justjavac(迷渡)-如何百倍加速 Lo-Dash?引入惰性计算程
阮一峰-ECMAScript 6 入门