函数式编程

函数式编程技术主要基于数学的函数和它的思想。
函数式编程主张以抽象的方式创建函数,这些函数能够在代码中的其他部分被重用。
函数式编程的好处:可以编写纯函数(对给定的输入返回相同的输出)。

  1. 数学中的函数是什么?
    f(x) = y
  • 函数必须总是接收一个参数
  • 函数必须总是返回一个值
  • 函数应该依据接收到的参数而不是外部环境运行
  • 对于一个给定的x,只会输出唯一的y
  1. 函数编程哲学:
    引用透明性:所有的函数,对于相同的输入都将返回相同的值。

  2. 命令式、声明式与抽象

  • 命令式:告诉函数如何做:
let array = [1,2,3]
for(i=0;i<array.length;i++){
  console.log(array[i])
}
  • 声明式与抽象:告诉函数做什么
let array = [1,2,3]
array.forEach((value) => {
  console.log(value)
})
  1. 纯函数
  • 纯函数不应改变任何外部环境的变量,不依赖任何外部环境变量。
  • 纯函数能干什么?
    产生可测试的代码
    并发代码
    可缓存
  1. jsvascript是函数式编程语言吗?
    函数式编程必须至少接受一个参数,并返回一个值。
    javascript可以创建一个不接受参数并且实际上什么也不返回的函数。
    example:
    let fn = () => {}
    javascript不是一种纯函数语言,而更像是一种多范式语言。
    javascript非常适合函数式编程范式。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 原文链接:https://github.com/EasyKotlin 值就是函数,函数就是值。所有函数都消费函数,...
    JackChen1024阅读 11,264评论 1 17
  • 什么是函数式编程?为何它重要? 数学中的函数 关键点: 函数必须总是接受一个参数 函数必须总是返回一个值 函数应该...
    前端一菜鸟阅读 3,996评论 0 3
  • 第5章 函数和函数式编程 5.1 引言函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数...
    VIVAFT阅读 4,524评论 0 5
  • 长久以来,面向对象在 JavaScript 编程范式中占据着主导地位。不过,最近人们对函数式编程的兴趣正在增长。函...
    神刀阅读 3,352评论 0 0
  • 编程范式 编程范式是:解决编程中的问题的过程中使用到的一种模式,体现在思考问题的方式和代码风格上。这点很像语言,语...
    vivaxy阅读 2,773评论 0 3