궁금한게 많은 코린이의 Developer 노트
[TIL] 프로그래머스 기초 flag에 따라 다른 값 반환하기 본문
나의 문제풀이
function solution(a, b, flag) {
let answer = flag == true ? a+b : a-b;
return answer
}
삼항 연산자를 사용해서 문제를 풀어보았다.
한 줄로도 코드 구현이 가능할 것 같아서 이리저리 시도해보았는데
function solution(a, b, flag) {
return flag == true ? a+b : a-b;
}
이렇게 작성하게 되면 도출 값이 true/ false 이 둘 중에 하나로 나오게 된다..
다시 작성해 본 바로는 answer 라는 변수를 설정하고 삼항 연산자를 써주었더니 작동이 되었다..
다른사람의 문제풀이
function solution(a, b, flag) {
return (flag)? a+b : a-b;
}
역시..간단하게 한 줄로 구현이 가능했다.
저 flag 겉에 씌여 있는 괄호는 없어도 정답인데 왜 사용했을까?
뤼튼에게 물어보니
앞에 있는 식의 우선순위를 명확히 하기 위해서 그렇다고 한다.
몰랐던 부분 정리
식에 괄호를 사용하면 좋은 점:
삼항 연산자 ? 와 : 는 우선순위가 낮아서
다른 연산자 +, - 와 함께 사용될 때 괄호로 감싸는 것이 좋다고 한다.
괄호를 사용함으로서 조건을 명확히 하고 그 조건에 따라 반환되는 결과 또한 명확해지기 때문에 사용.
코드의 가독성을 높이고 식의 의도를 명확하게 전달할 수 있다. 좋은 프로그래밍의 관례라고..
'TIL' 카테고리의 다른 글
[모던리액트 딥다이브] 2024-04-04 DIL (0) | 2024.04.04 |
---|---|
[모던 리액트 딥다이브] 스터디 2024-04-03 DIL (1) | 2024.04.04 |
[TIL] 문자 리스트를 문자열로 반환하기 (Math.max(),+연산자) (0) | 2024.02.08 |
[TIL] 프로그래머스 문자열 겹쳐쓰기 (0) | 2024.02.07 |
[TIL] 프로그래머스 입문 A를 B로 만들기 (0) | 2024.02.02 |