【问题标题】:recursive function with memo带有备忘录的递归函数
【发布时间】:2013-08-30 17:56:28
【问题描述】:


我在尝试从这个递归函数返回时遇到了麻烦。我有一个键值对索引,指向更多的单字母字符等等。这似乎有效,但我肯定会放弃应该收集的结果。

任何人都可以看到任何明显的问题吗?

 lunr.TokenStore.prototype.sub_roots = function(first_key,root,memo){
      memo = memo || {}
          for(var key in root){
            if(first_key === key) {
                memo[first_key] = root[key]
                memo["docs"] = root[key].docs || {}
                //return memo
            }
            if( key !== 'docs' ) { this.sub_roots(first_key,root[key],memo) }
          }
            return memo
    }

【问题讨论】:

    标签: javascript recursion indexing


    【解决方案1】:

    first_key 始终相同,memo 是 {} 而不是数组

    【讨论】:

    • 并且注释掉的返回备忘录应该继续
    猜你喜欢
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-28
    相关资源
    最近更新 更多