정말 좋은 프로그램에는 if..else가 없다고 말한 적이 있습니다. 물론 스위치는 if..else만큼 좋지 않습니다. JS 사양에서는 스위치 사용을 금지합니다.
명령 개체는 이 문제를 완벽하게 해결합니다.
해외 블로그 인용문:
JavaScript에는 종종 중괄호로 묶인 좋은 제어 흐름 문이 있습니다. 한 가지 예외가 있습니다: switch…case 문입니다. 스위치 ... 케이스의 이상한 점은 흐름 제어가 다음 케이스 문으로 전달되는 것을 방지하기 위해 각 케이스 끝에 break 키워드를 추가해야 한다는 것입니다. 순회(Traversal)는 여러 케이스를 실행하는 방법을 말하며, 예상되는 중단이 발생하지 않으면 제어가 자동으로 다음 케이스로 넘어갑니다. 그러나 세미콜론이나 중괄호와 마찬가지로 실수로 break를 쓰는 것을 잊어버릴 수도 있습니다. 이런 일이 발생하면 문 자체가 정확하기 때문에 나중에 문제를 해결하는 것이 더 어려울 것입니다. 따라서 Case ... Break를 쌍으로 작성하는 것이 좋습니다.
우리는 일반적으로 JavaScript에는 우아한 객체 리터럴과 최상위 함수가 있어 특정 메서드 쿼리를 매우 간단하게 만든다고 말합니다. 메소드 쿼리를 위해 생성된 개체는 작업 개체 또는 명령 개체라고 하며 강력하고 유용한 명령 패턴을 비롯한 많은 소프트웨어 디자인 패턴에 사용됩니다.
예: