函数式编程的概念

函数式编程

原文链接:https://note.noxussj.top/?source=sifo

什么是函数式编程?

函数式编程(Functional Programming, FP)就是利用纯函数实现细粒度的函数,然后再通过函数的组合把细粒度的函数组合成功能更强大的函数。函数式编程中的 "函数" 不是程序中的函数(方法),而是数学中的函数(映射关系),例如 y=sin(x) 中 x 和 y 的关系,函数式编程用来描述数据之间的映射。

优点

封装成细粒度的函数,方便后期复用和多细粒度的函数进行组合。


不同的思维方式

面向对象编程

把现实世界中的事物抽象成程序世界中的类和对象,通过封装、继承、多态来演示事物事件的联系。

函数式编程

把现实世界中的事物和事物之间的联系抽象到程序世界,对运算过程进行抽象。


基础案例

非函数式编程

    const num1 = 2

    const num2 = 3

    const sum = num1 + num2

函数式编程

    function add(num1, num2) {
        return num1 + num2
    }

    const sum = add(2, 3)

原文链接:https://note.noxussj.top/?source=sifo

19 声望
2 粉丝
0 条评论
推荐阅读
计算属性 Computed
小伙伴们应该都知道选项 data 里面可以用来定义一些数据,也可以通过 props 接收父组件传进来的数据,props 接收进来的数据是不能进行修改的,这里在明确声明一下。当我们想对展示的数据进行修改,可以通过过滤器...

菜园前端

ESlint + Stylelint + VSCode自动格式化代码(2023)
安装插件 ESLint,然后 File -> Preference-> Settings(如果装了中文插件包应该是 文件 -> 选项 -> 设置),搜索 eslint,点击 Edit in setting.json

谭光志34阅读 20.8k评论 9

安全地在前后端之间传输数据 - 「3」真的安全吗?
在「2」注册和登录示例中,我们通过非对称加密算法实现了浏览器和 Web 服务器之间的安全传输。看起来一切都很美好,但是危险就在哪里,有些人发现了,有些人嗅到了,更多人却浑然不知。就像是给门上了把好锁,还...

边城32阅读 7.3k评论 5

封面图
涨姿势了,有意思的气泡 Loading 效果
今日,群友提问,如何实现这么一个 Loading 效果:这个确实有点意思,但是这是 CSS 能够完成的?没错,这个效果中的核心气泡效果,其实借助 CSS 中的滤镜,能够比较轻松的实现,就是所需的元素可能多点。参考我们...

chokcoco24阅读 2.2k评论 3

你可能不需要JS!CSS实现一个计时器
CSS现在可不仅仅只是改一个颜色这么简单,还可以做很多交互,比如做一个功能齐全的计时器?样式上并不复杂,主要是几个交互的地方数字时钟的变化开始、暂停操作重置操作如何仅使用 CSS 来实现这样的功能呢?一起...

XboxYan25阅读 1.7k评论 1

封面图
在前端使用 JS 进行分类汇总
最近遇到一些同学在问 JS 中进行数据统计的问题。虽然数据统计一般会在数据库中进行,但是后端遇到需要使用程序来进行统计的情况也非常多。.NET 就为了对内存数据和数据库数据进行统一地数据处理,发明了 LINQ (L...

边城17阅读 2k

封面图
过滤/筛选树节点
又是树,是我跟树杠上了吗?—— 不,是树的问题太多了!🔗 相关文章推荐:使用递归遍历并转换树形数据(以 TypeScript 为例)从列表生成树 (JavaScript/TypeScript) 过滤和筛选是一个意思,都是 filter。对于列表来...

边城18阅读 7.8k评论 3

封面图
19 声望
2 粉丝
宣传栏