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

javascript 函数式编程

时间:2020-03-31 12:06:44      阅读:72      评论:0      收藏:0      [点我收藏+]

标签:函数式编程   逻辑   end   demo   nts   fun   return   attr   赋值   

简介

一直不理解函数式编程,其实就像deeplearning 一样 知难行易。一般人使用的多的,不会太难;

Example

    function SimpleWidget(spec) {
        var instance = {}; // <-- A

        var headline, description; // <-- B

        instance.render = function () {
            var div = d3.select(‘body‘).append("div");

            div.append("h3").text(headline); // <-- C

            div.attr("class", "box")
               .attr("style", "color:" + spec.color) // <-- D
               .append("p")
                   .text(description); // <-- E

            return instance; // <-- F
        };

        instance.headline = function (h) {
            if (!arguments.length) return headline; // <-- G
            headline = h;
            return instance; // <-- H
        };

        instance.description = function (d) {
            if (!arguments.length) return description;
            description = d;
            return instance;
        };

        return instance; // <-- I
    }// 逻辑上是  一个返回对象的函数 简称: 函数式编程 

    var widget = SimpleWidget({color: "#6495ed"})
            .headline("Simple Widget")// 返回对象之后然后对对象中的一些元素赋值
            .description("This is a simple widget demonstrating functional javascript.");
    widget.render();// 绘制

javascript 函数式编程

标签:函数式编程   逻辑   end   demo   nts   fun   return   attr   赋值   

原文地址:https://www.cnblogs.com/eat-too-much/p/12604152.html

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