6-5. 함수 선언 바꾸기
적용 시점
잘못된 함수명을 바꾸는 경우
함수의 매개변수를 변경하는 경우
변경 사항을 살펴보고 함수 선언과 호출문을 단번에 고칠 수 있는 경우
간단한 절차
매개변수를 제거하려거든 먼저 함수 본문에서 제거 대상 매개변수를 참조하는 곳은 없는지 확인
메서드 선언을 원하는 형태로 바꿈
기존 메서드 선언을 참조하는 부분을 모두 찾아서 바뀐 형태로 수정
테스트
마이그레이션 절차(이름 변경과 매개변수 추가를 모두 하는 경우)
이어지는 추출 단계를 수월하게 만들어야 한다면 함수의 본문을 적절히 리팩터링한다.
함수 본문을 새로운 함수로 추출
추출한 함수에 매개변수를 추가해야 한다면 간단한 절차를 따라 추가한다.
테스트
기존 함수를 인라인
이름을 임시로 붙여뒀다면 함수 선언 바꾸기를 한 번 더 적용해서 원래 이름으로 돌림
테스트
예시
❌ Before
const findUserNames = (users, age, sex) =>
users.filter((user)
=> user.age === age && user.sex === sex).map((user) => user.name)
⭕ After
const extractOnlyUserName = (users) => users.map((user) => user.name);
const findUserNames = (users, age, sex) =>
extractOnlyUserName(users.filter((user)
=> user.age === age && user.sex === sex))
Last updated