[js] 为什么要用纯函数?
在此之前要先了解什么是纯函数,简单来说纯函数的定义有两个:
1.返回的结果只依赖于传入的参数。
2.执行过程中不产生副作用。
在这里就需要了解到什么是副作用
1.改变了外部变量或者对象属性
2.触发任何外部进程
3.发送http请求
4.调用其他有副作用的函数
5.……
那么我们为什么要用纯函数呢,从定义来看,我们可以知道纯函数不管你在什么时候请求它,只要参数是一样的,那返回的结果就肯定是一样的。
然后对于副作用我的理解是一个函数的功能要单一 ,你不能即在负责计算或者什么别的行为的同时还负责http请求什么的,发起http请求应该让另外一个函数去单独实现。
然后另外一个函数虽然产生了副作用,但是它的返回结果只依赖于传入的参数(比如链接)。这样做的好处有方便测试和后期维护,如何你一个函数负责多个功能,那后面估计看着这个函数都很难受。
个人简介
我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,
但坚持一定很酷。欢迎大家一起讨论
主目录
与歌谣一起通关前端面试题