纯函数

作者: 柳源居士 | 来源:发表于2018-10-31 22:46 被阅读5次

    纯函数的特点:

    • 对于同一参数,返回同一结果
    var squareNumber = memoize(function(x) {
      return x * x;
    });
    
    squareNumber(4);
    //=> 16
    
    squareNumber(4); // returns cache for input 4
    //=> 16
    
    squareNumber(5);
    //=> 25
    
    squareNumber(5); // returns cache for input 5
    //=> 25
    
    • 结果完全取决于传入的参数
    • 不产生副作用

    函数副作用是指函数在正常工作任务之外对外部环境所施加的影响。
    函数副作用是指函数被调用,完成了函数既定的计算任务,但同时因为访问了外部数据,尤其是因为对外部数据进行了写操作,从而一定程度地改变了系统环境。
    函数的副作用也有可能是发生在函数运行期间,由于对外部数据的改变,导致了同步运行的外部函数受到影响。

    相关文章

      网友评论

          本文标题:纯函数

          本文链接:https://www.haomeiwen.com/subject/tkjjoftx.html