js纯函数学习笔记(一)
栏目: JavaScript · 发布时间: 7年前
内容简介:纯函数是指同样的输入(入参)得到同样的输出(返回结果),不依赖与外部环境,同时也不对外部的环境造成影响,比如不会影响入参的对象。
纯函数是指同样的输入(入参)得到同样的输出(返回结果),不依赖与外部环境,同时也不对外部的环境造成影响,比如不会影响入参的对象。
举例说明
// Pure funs
function square (x){
return x*x;
}
function squareAll(items){
return items.map(square);
}
//Impure funs
function square (x){
//依赖了外部环境
updateXInDatabase(x);
return x*x;
}
function squareAll(items){
for(let i = 0 ; i < items.length ; i ++ ){
// 改变了原来的入参对象
items[i] = square(item[i]);
}
}
复制代码
小结
| 对比 | 纯函数 | 非纯函数 |
|---|---|---|
| 外部依赖 | 仅依赖入参 | 可能依赖全局变量,其他方法或者条件 |
| 输出 | 同样的输入,一样的输出 | 可能因为不同的情况,得到结果不同 |
| 对外影响 | 不改变原来的入参和环境内的变量等 | 可能会改变 |
以上所述就是小编给大家介绍的《js纯函数学习笔记(一)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Hacking Growth
Sean Ellis、Morgan Brown / Crown Business / 2017-4-25 / USD 29.00
The definitive playbook by the pioneers of Growth Hacking, one of the hottest business methodologies in Silicon Valley and beyond. It seems hard to believe today, but there was a time when Airbnb w......一起来看看 《Hacking Growth》 这本书的介绍吧!