前端纯函数和副作用概念,且在react上的体现详解

什么是纯函数

纯函数是这样一种函数,即相同的输入,永远会得到相同的输出的函数,而且没有任何可观察的副作用。  

什么是副作用

副作用是在计算结果的过程中,系统状态的一种变化,或者与外部世界进行的可观察的交互。 

个人理解:导致这个函数相同的输入,会产生不一样的输出,就是副作用

var	minimum	= 21;
var	checkAge = function (age)	{
	return age >= minimum;
};

//纯的
var	checkAge = function (age)	{
	var	minimum	= 21;
	return age >= minimum;
};

在不纯的版本中,checkAge的结果将取决于minimum这个可变变量的值。换句话说,全局作用域下的minimum改变之后,会影响checkAge的结果。在纯的版本中,minimum值被限定在函数作用域中,外部无法直接修改,所以函数结果只会和参数age有关。副作用在react上的体现

副作用在react(或前端框架)上的体现及意译:

1、用户交互   

点击了按钮,修改了页面标题,就是用户交互 副作用。

2、同步数据源

 将外部的数据源同步到内部数据源,这些请求,定时器就是 副作用

总结: 副作用在前端框架里的体现跟上面 什么是纯函数 什么是副作用 的意思可能有点不太一样。

扫描二维码关注公众号,回复: 16474787 查看本文章

猜你喜欢

转载自blog.csdn.net/weixin_43416349/article/details/129239527