day01_纯函数和副作用函数

纯函数

  • 存函数定义:相同的输入永远会得到相同的输出,而没有任何可观察的副作用函数

  • 存函数好处

    • 可缓存,例如lodash中的memoize记忆函数。

    • 可测试,纯函数让测试更方便。

    • 并行处理:在多线程环境下并行操作共享的内存数据很可能会出现意外情况 纯函数不需要访问共享的内存数据,所以在并行环境下可以任意运行纯函数 (Web Worker)

副作用函数

  • 副作用函数:函数会依赖或改变外部的状态。所有外部交互都有可能带来副作用,副作用也使得方法通用性下降不适合扩展和可重用性,同时副作用会给程序中带来安全隐患给程序带来不确定性,但是副作用不可能完全禁止,尽可能控制它们在可控范围内发生。

posted @ 2022-04-07 00:19  coffeemil  阅读(40)  评论(0编辑  收藏  举报