Node.js - trampoline이란? ( tail call, recursion )
개요 trampoline이라는 기법을 알아보려고 한다. 시나리오 먼저 1 ~ n 까지 더하는 함수를 작성한다고 하자. 테스팅 코드 우선 아래의 코드를 통해서 테스트를 진행할 것이다. const test = (name, n, fn) => { try { console.time(name); fn(n); console.timeEnd(name); } catch (error) { console.error(error); } } // test('counter1', 100, counter); 1. 기본 우리는 바로 다음과 같이 작성할 것이다. const counter1 = (n) => { let sum = 0; for (let i = 1; i { if (n === 0) { return n; } return n + cou..
2022.03.13