下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

web前端:前端函数式编程中的各种概念

作者:灭灭     来源: https://www.cnblogs.com/eightFlying/p/function_js.html点击数:661发布时间: 2020-03-06 09:09:40

标签: 函数式编程计算机编程

Web开发

  编程是编写程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。

  1、什么是函数式编程

  利用函数把运算过程封装起来,通过组合各种函数来计算结果。(将一套业务流程分割成多个功能,每个功能都用函数封装起来,最后实现这个业务其实就是在调用这些功能函数,这就是函数式编程)

  2、一些与函数式编程相关的概念

  1.纯函数-指的是函数无副作用,相同的输入(函数参数)有相同的输出(函数返回)

  2.闭包-存在内、外两层函数,内层函数对外层函数的局部变量进行来引用。(用途:定义一些作用域局限的持久化变量)

  3.递归-在函数内部调用函数自身。(非常消耗内存,易产生栈溢出错误,解决:严格模式下,采用尾调用;正常模式下,改为循环)

  4.尾调用-某个函数的最后一步是调用另一个函数,仅调用,不能有其他操作,但是参数可以

  5.pointfree-不使用要处理的值的形参,只合成运算过程,可以使代码更加清晰(就是将一些通用的函数,组合出各种复杂运算,省略掉中间不必要的参数变量)

  6.柯里化-把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术(官文翻译有点抽象,就是说把有多个参数的函数变成只有一个参数的函数,这个函数返回一个新函数,这个新函数接受剩余的参数并且返回最后的结果,这个过程就叫做柯里化)

  //普通的add函数

  functionadd(x,y){

  returnx+y

  }

  //柯里化后

  functioncurryingAdd(x){

  returnfunction(y){

  returnx+y

  }

  }

  add(1,2)//3

  curryingAdd(1)(2)//3

  7.高阶函数-一个函数以函数为参数,或以函数为返回值,或这两种行为都有。

  为了使计算机能够理解人的意图,人类就必须将需解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算体系之间交流的过程就是编程。

赞(10)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程