在计算机科学中，函数副作用指当调用函数时，除了返回函数值之外，还对主调用函数产生附加的影响。例如修改全局变量（函数外的变量），修改参数或改变外部存储。在某些情况下函数副作用会给程序设计带来不必要的麻烦，给程序带来十分难以查找的错误，并降低程序的可读性。严格的函数式语言要求函数必须无副作用。下面是函数的副作用相关的几个概念，纯函数、非纯函数、参照透明性。
纯函数.纯函数（）——输入输出数据流全是显式（）的。 显式的意思是，函数与外界交换数据只有一个唯一渠道——参数和返回值