什么是纯函数

92 阅读1分钟

纯函数(Pure Function)

是函数编程中的一个核心概念,它的主要特点是:

给定相同的输入,始终返回相同的输出,并且不产生任何副作用

纯函数的行为 仅由其输入参数决定,与程序的其他状态和外部世界的变化无关!

特点:

  • 确定性:相同的输入会产生固定的输出,即函数输出可预测
  • 无副作用性:修改输入参数,不修改全局变量等其他状态,也会与I/O设备(文件系统,网络等)交互不会影响程序外的世界
  • 引用透明性:可以安全地替换其返回值
  • 易于测试性:可编写单元测试
  • 可缓存性:由于纯函数的输出是确定的,因此我们可以缓存其输出结果,并在后续调用时使用缓存的结果,而不是重新计算。这可以提高程序的性能,特别是在处理计算密集型任务时。

好处:

有助于编写更清晰,更可靠,更易于维护和测试的代码

在可能的情况下,尽量编写纯函数,并通过其他方式(如状态管理库)来处理状态变更副作用!