副作用

原文:https://note.noxussj.top/?source=nowcoder

什么是副作用?

副作用会让一个函数变的不纯,纯函数是根据相同的输入返回相同的输出,如果函数依赖于外部的状态就无法保证输出相同,就会带来副作用。

副作用来源

函数依赖外部状态(变量),但是副作用不可能完全禁止,尽可能控制在它们可控范围内发生。

缺点

  • 副作用使得方法通用性下降不适合扩展和可重用性
  • 副作用给程序中带来安全隐患和不稳定性

基础案例

没有副作用的函数,纯函数

function checkAge(age) {
    const xiaoming = 18
    return age >= xiaoming
}

存在副作用的函数,不纯的函数

const xiaoming = 18

function checkAge(age) {
    return age >= xiaoming
}

原文:https://note.noxussj.top/?source=nowcoder

全部评论
感谢分享!有木有更多的案例呀?
点赞 回复 分享
发布于 2023-05-15 10:21 湖北
请问友友副作用要怎么控制呀?
点赞 回复 分享
发布于 2023-05-15 10:39 辽宁

相关推荐

无敌虾孝子:喜欢爸爸还是喜欢妈妈
点赞 评论 收藏
分享
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-20 19:57
已编辑
某大厂 golang工程师 23.0k*16.0, 2k房补,年终大概率能拿到
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务