본문 바로가기

Algorithm/Javascript로 코테 준비하기

[JS로 코테 준비하기] 2. 프로그래머스 - 각도기(feat. JS 분기 처리)

반응형

https://school.programmers.co.kr/learn/courses/30/lessons/120829

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

Javascript 분기 처리 방법

분기 처리를 할 때는 조건의 순서가 중요하다.

어떤 조건을 먼저 쓰느냐에 따라 결과가 달라지기 때문이다. (+ 깔끔한 코드 작성은 덤)

 

1. if - else

  • 가장 직관적인 방법 
function solution(angle) {
    if(angle < 90) return 1;
    else if(angle == 90) return 2;
    else if(angle < 180) return 3;
    else return 4;
}

 

2. if만

  • else를 쓰지 않은 이유는 함수의 반환 값을 정확하게 하기 위함이다.
function solution(angle) {
    if(angle < 90) return 1;
    if(angle == 90) return 2;
    if(angle < 180) return 3;
    return 4;
}

 

가끔 브라우저에서 동작하는 javascript의 특성을 생각하다보면 위에 있다고 먼저 실행되는 것이 아닌데..아래쪽에 위치한 if문이 먼저 실행되면 어떡하지?라는 생각을 한다.. 🤔

 

물론, 기본적으로 javascript 코드는 세미콜론으로 구분된 구문단위로 위에서부터 차례대로 실행되니 알고리즘을 풀 때 순서에 대한 걱정은 크게 하지 않아도 된다!

 

3. ? (삼항 연산자)

  • 쓰는 입장에서 편하긴 하지만.. 뎁스가 깊어질수록 가독성이 떨어진다.
function solution(angle) {
    return angle < 90 ? 1 : angle == 90 ? 2 : angle < 180 ? 3 : 4;
}

 

 

Reference

반응형