예제 1-2 진입점과 종료점을 가진 작업 단위
// number-parser2.js
let total = 0;
const totalSoFar = () => {
return total;
};
const sum = (numbers) => {
const [a, b] = numbers.split(',');
const result = Number.parseInt(a, 10) + Number.parseInt(b, 10);
total += result; ➊
return result;
};
➊ sum 함수가 실행될 때마다 누적 값을 기록하는 새로운 기능을 추가했다.
예제 1-2에서 sum 함수는 다음 종료점 두 개를 갖고 있다.
• 숫자의 합을 반환한다.
• 숫자의 합을 total에 추가하는 누적 합계를 계산한다. 여기에서는 total 변수를 하나의 상태 값으로 간주한다. 상태 값 total은 totalSoFar 함수의 종료점으로 확인할 수 있고, totalSoFar 함수는 sum 함수를 호출한 진입점에서 호출될 수 있다.