首页 > 网站 > WEB开发 > 正文

函数记忆

2024-04-27 14:22:00
字体:
来源:转载
供稿:网友

函数记忆

函数记忆

函数可以将先前操作的结果记录在某个对象里,从而避免重复的运算,这种优化被称为记忆。我们可以编写一个函数来帮助我们构造带记忆功能的函数, 例如:

function memoizer(fun, memo) {    var memo =  memo || {};return function(n) {        var ret = memo[n];        if (typeof ret === "undefined") {            ret = fun(n);            memo[n] = ret;        }        return ret;    } }var fibonacci = memoizer(function(n) {    return fibonacci(n-1) + fibonacci(n-2)}, [0, 1]);

计算一个初始数字为0、1的Fibonacci数列, 使用函数记忆的方法可以减少运算量。

参考《javaScript语言精粹》第四章


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表