gpt4 book ai didi

javascript - 函数变量更改时 Memoize 失败

转载 作者:行者123 更新时间:2023-11-30 08:28:42 28 4
gpt4 key购买 nike

var fibo = function (x) {
console.log(x);
if (x === 1) return 1;
if (x === 2) return 2;
return fibo(x - 1) + fibo(x - 2);
};

// fibo = _.memoize(fibo);
var fibom = _.memoize(fibo);
console.log(fibom(5));
<script src="https://cdn.jsdelivr.net/lodash/4.17.2/lodash.min.js"></script>

为什么 memoize 在分配给原始函数变量名(如注释掉的代码中所示)时起作用,但在分配给新变量时却不起作用?

最佳答案

当您将内存函数分配给新变量时,递归调用仍将转到未内存的版本。您需要像在注释掉的代码中那样覆盖引用。

关于javascript - 函数变量更改时 Memoize 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41091703/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com