相关疑难解决方法(0)

如何在JavaScript中理解蹦床?

这是代码:

function repeat(operation, num) {
  return function() {
    if (num <= 0) return
    operation()
    return repeat(operation, --num)
  }
}

function trampoline(fn) {
  while(fn && typeof fn === 'function') {
    fn = fn()
  }
}

module.exports = function(operation, num) {
  trampoline(function() {
    return repeat(operation, num)
  })
}
Run Code Online (Sandbox Code Playgroud)

我已经读过蹦床用于处理溢出问题,因此该函数不仅会保持调用自身和堆栈.

但是这个片段的功能如何呢?特别是trampoline功能?它究竟做了什么while以及它是如何实现其目标的?

感谢您的任何帮助 :)

javascript recursion trampolines

45
推荐指数
3
解决办法
1万
查看次数

标签 统计

javascript ×1

recursion ×1

trampolines ×1