4.2 어휘력을 늘려 더 멋진 코드 만들기
기초 개념만으로 달여낸 코드가 가장 간단하고 이해하기 쉽다는 말은 미신이다. 어휘력이 떨어지면 외려 장황하고 비비 꼬인 프로그램으로 변질되기 쉽다.
표 4-1은 앞서 언급한 for와 forEach를 사용한 루프문을 서로 비교한 표다.
▼ 표 4-1 for와 forEach의 비교표
for |
forEach |
|
할당 |
ix=0 ++ix |
해당 없음 |
프로퍼티 참조 |
myArray.length |
해당 없음 |
배열 원소 참조 |
myArray[ix] |
해당 없음 |
조건 분기 |
ix<myArray.length |
해당 없음 |
함수 호출 |
doSomething(myArray[ix]) |
doSomething |
습관적으로 for 루프문을 써온 개발자는 얼마나 많은 가욋일이 있는지 잘 모르는 것 같다. 배열 원소 각각에 doSomething 함수를 호출하는 일이 주목적인데, 할당, 프로퍼티 참조, 조건 분기 등 잡다한 일들이 끼어든다. 불필요한 쓰레기 더미에서 멋진 코드가 나올 리 없다.