码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript高阶函数

时间:2015-06-24 20:34:00      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:

  所谓高阶函数(higher-order function) 就是操作函数的函数,它接收一个或多个函数作为参数,并返回一个新函数。

  下面的例子接收两个函数f()和g(),并返回一个新的函数用以计算f(g());

//返回一个新的可以计算f(g())的函数
//返回的函数h()将它所有的实参传入g(),然后将g()的返回值传入f()
//调用f()和g()时的this值和调用h()时的this值是同一个this
function compose(f,g){
    return function(){
        return f.call(this,g.apply(this,arguments));
    }
}

var square=function(x){
    return x*x;
}
var sum=function(x,y){
    return x+y;
}
var squareofsum=compose(square,sum);
squareofsum(2,3);// 25

  来源于《JavaScript权威指南》 8.8.2

JavaScript高阶函数

标签:

原文地址:http://www.cnblogs.com/-------perfect/p/4598319.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!