由来 :

    1. 纯函数是相对于相同的输入返回相同的输出,没有任何可观察的副作用
    2. 在纯函数的哲学中, 副作用是纯函数一切异常的主要原因
    3. 副作用会让一个函数变得不纯, 这种不纯的异常隐患是BUG滋生的潜在因素 ```javascript /**
      • @desc 副作用 */

    const mini = 18 // 该函数具有副作用 函数依赖外部状态 function checkAge(age) { return age >= mini; }

    // 纯函数 function checkAge1(age) { const mini = 18; return age >= mini; } ``` 副作用的来源 :

    1. 读取文件系统
    2. 发送http请求
    3. 用户的输入
    4. 读取数据库
    5. ……