JavaScript中的函数(三):函数式编程

JavaScript非函数式编程语言,然而JavaScript中可以像操控对象一样操控函数,就是说可在JavaScript中应用函数式编程。

使用函数处理数组

map和reduce是ECMAScript5中的特性,要ECMAScript3中可以使用Array.prototype来定义(Array.prototype.map)

高阶函数

高阶函数,即操作函数的函数,入参是一个或多个函数,出参是一个新函数。

<html>
<head>
    <script type="text/javascript">
    function mix(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 = mix(square, sum);

    console.info(squareOfSum(2, 3))
    </script>
</head>

<body>
</body>

</html>

记忆

可以将上次计算的结果缓存起来,这种技巧叫做“记忆”(memorization)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 函数和对象 1、函数 1.1 函数概述 函数对于任何一门语言来说都是核心的概念。通过函数可以封装任意多条语句,而且...
    道无虚阅读 4,673评论 0 5
  • 关于译者:这是一个流淌着沪江血液的纯粹工程:认真,是 HTML 最坚实的梁柱;分享,是 CSS 里最闪耀的一瞥;...
    iKcamp阅读 1,500评论 0 2
  • 在JavaScript中,函数即对象,程序可以随意操控它们。比如,JavaScript可以把函数赋值给变量,或者作...
    kissLife阅读 964评论 0 0
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,272评论 0 4
  • 今日港城太阳雨 我看见稀薄的阳光 穿过细雨,高窗,蚊帐 抵达我的眼前 尘在舞 幻化出一张脸 那眉目笑语使我大病一场...
    伥弥阅读 178评论 0 0