作为标题,为什么requestAnimationFrame
递归不会吃掉 RAM。这篇帖子说 V8 引擎没有针对tail call
. 那是因为浏览器在背后做了什么吗?还是V8支持优化tail call
?
这是 MDN 的示例:
function step(timestamp) {
var progress = timestamp - start;
d.style.left = Math.min(progress/10, 200) + "px";
if (progress < 2000) {
requestAnimationFrame(step);
}
}
requestAnimationFrame(step);