클린코드3 스프레드 연산자는 .concat보다 성능이 좋다. const a = [1, 2, 3]; const b = [4, 5, 6]; const c = a.concat(b); // Bad const d = [...a, ...b]; // Good 스프레드 연산자는 concat을 쓰는 것보다 일반적으로는 더 빠르다. 왜냐하면 스프레드 연산자는 새 배열을 생성 및 조작할 필요가 없고, concat은 새 배열을 만들고 원래의 배열을 합치기 때문이다. 그럼 언제 concat이 더 빠를까? 배열 안에 하위 배열이 있고 그 수가 매우매우 많을 때 concat이 더 빠를 수 있다. 대부분의 웹개발에서는 스프레드를 쓰는게 좋다는 결론. 하지만 개인적으로는 가독성이 concat이 낫다고 생각할 때는 concat 또한 애용하는 편이다. 함수형으로 짜다 보면 중간에 스프레드를 껴넣기.. 2023. 1. 19. Lookup Table if - else if - else를 switch로 리팩토링하는 케이스는 엄청 흔하다. function getChannelType(channelType) { switch(channelType) { case "A": return "A 채널"; case "B": return "B 채널"; case "C": return "C 채널"; default: return "채널 없음"; } } 근데 이걸 이렇게도 할 수 있다. function getChannelType(channelType) { const CHANNEL_TPYE = { A: 'A 채널', B: 'B 채널', C: 'C 채널', }; return CHANNEL_TYPE[channeltype] || '채널 없음'; } case와 return문이 한 줄에 .. 2022. 9. 5. early return / else if, else 피하기 좋은 코드를 짜야하는 이유 프로그래밍은 혼자 하는 것이 아니라 다른 사람들과 함께 하는 협업이기 때문이다. 내가 쓴 코드를 나는 알아도 팀원들이 읽기 어렵다면 좋지 않은 코드이다. 또한 지금 당장 내가 쓴 코드를 알아도 시간이 흘러 나중에 본다면 잘 알지 못할 수도 있다. 그렇기 떄문에 가독성 높은 좋은 코드를 쓰도록 노력해야한다. early return // 좋지 않은 예시 function hello(input) { if (조건1) { if (조건2) { if (조건3) { return 'hello' } else { return 'bye' } } else { throw new Error('some error'); } } throw new Error('something went wrong'); } 딱 .. 2022. 4. 28. 이전 1 다음 728x90