나의 대답
if 문을 통해 결과값 도출
function solution(angle) {
if(0 < angle && angle < 90){
return 1;
} else if(angle == 90){
return 2;
} else if(90 < angle && angle < 180){
return 3;
} else if(angle == 180){
return 4;
}
}
다른 사람의 풀이
filter 사용
function solution(angle) {
return [0, 90, 91, 180].filter(x => angle>=x).length;
}
댓글 반응도 뜨거웠던 위 풀이 방식...
배열 [ 0, 90, 91, 180] 에서 angle이 배열요소 x 보다 크거나 같을 경우만 추출한다.
예를 들어, angle 이 92일 경우 0, 90, 91만 angle 보다 작기 때문에 배열에 [0, 90, 91] 이 추출되어 남게 되고 그 결과 총 배열의 개수가 3이되어 return 3이 된다.
삼항조건연산자
function solution(angle) {
return angle < 90 ? 1 : angle === 90 ? 2 : angle < 180 ? 3 : 4;
}
삼항 조건 연산자를 통해 angle 이 90 보다 작을경우 1 아닐 경우 다음 삼항조건 연산자로 넘어간다.
'자바스크립트(JavaScript) > 프로그래머스 문제풀기' 카테고리의 다른 글
[JavaScript] 틸트(tilt) 연산자(~), (~~) (0) | 2024.12.16 |
---|---|
[백업] tilde(~)과 double tilde(~~)연산자 (0) | 2024.12.16 |
[programmers - js] 배열의 평균값 (0) | 2024.12.16 |
[programmers - js] 짝수 더하기 (0) | 2024.12.16 |
[programmers - js] 배열 두 배 만들기 / reduce, map (0) | 2024.12.16 |