大前端
番茄炒蛋多加米饭
这个作者很懒,什么都没留下…
展开
-
函数的组合
如果一个函数需要经过多个函数处理才能得到最终值,这个时候可以把函数组合起来。如果一个函数比较复杂,可以把函数拆分成多个小函数。原创 2022-10-30 22:43:43 · 174 阅读 · 1 评论 -
函数的柯里化
柯里化 当一个函数有多个参数的时候先传递一部分参数调用它(这部分参数以后永远不变) 然后返回一个新的函数接收剩余参数,返回结果, 利用到了闭包的变量作用延长 如下: 箭头函数简写更加方便 lodash 柯里化 _curry 如果只传递了部分参数则返回一个函数等待传递后面的参数柯里化 curry原理模拟原创 2022-10-27 23:51:32 · 181 阅读 · 0 评论 -
纯函数概念
纯函数不需要访问共享的内存数据。所以在并行环境下可以任意运行纯函数。纯函数:相同的输入永远得到相同的输出,而且没有任何可观察的副作用。纯函数的缓存(相同的输入永远得到相同的输出) 模拟memoize。如下:函数返回依赖外部变量,导致相同的输入不能得到相同的输出。如下,slice就是纯函数,splice就不是纯函数。纯函数让测试更方便,因为始终是相同输入相同输出·纯函数类似数学中的函数。原创 2022-10-27 23:20:52 · 173 阅读 · 0 评论 -
js的闭包
个人理解:例如,makeFn函数在执行的时候,字符串(非长)存在栈中,栈中的数据在函数执行完毕是会被销毁的。形如下面就是闭包,在通常情况下在makeFn()执行完毕时 msg会被释放,我们不能通过执行内部的匿名函数来访问到它,而这压样执行fn() (return的匿名函数) 却能访问到msg,是因为外部作用域对msg有引用。闭包本质,函数在执行的时候会放到执行栈上当函数执行完毕之后会从执行栈上移除,但是堆上的作用域成员因为被外部引用不能释放,因此内部函数依然可以访问外部函数的成员。原创 2022-10-25 23:35:29 · 84 阅读 · 0 评论 -
函数式编程 01
函数式编程指的不是程序中的函数,指的是数学中的函数,映射函数关系 如y=sinx。函数式编程就是对运算过程进行抽象。高阶函数 1. 函数作为参数。相同的输入有相同的输出。原创 2022-10-19 23:08:23 · 53 阅读 · 0 评论