纯函数

作者: MISS_3ca2 | 来源:发表于2020-12-13 18:03 被阅读0次

    纯函数:一个函数的返回结果只依赖于它的参数, 输入参数一致返回的结果一样,并且在执行过程里面没有副作用,我们就把这个函数叫做纯函数

    大佬教的纯函数优化 (记录下 好记性不如烂笔头)

    function getSum(a,b,c){
      console.log(a,b,c)
      return a+b+c
     }
    
    image.png

    输入同样的参数 每次都要重新执行函数 如何优化?设置缓存 如果缓存里有直接取缓存的结果 反之执行getSum()函数

    function test(fn){
        let obj = {}
        return function(...args){
            let key = JSON.stringify(args)
            //console.log(key, obj[key])
            if(obj[key]){
                    return obj[key]
                }else{
                    obj[key]=fn(...args)
                    return obj[key]
                }
            
        }
    }
    let gxj=test(getSum)
    gxt(1,2,3)
    gxt(1,2,3)
    这时候getSum函数只调用了一次 第二次调用的时候是从缓存里读取的
    
    

    相关文章

      网友评论

          本文标题:纯函数

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