본문 바로가기

Programming/javascript (JS)

JS(11) 연산자 우선순위

연산자 우선순위

수학에서 곱하기를 더하기보다 먼저 계산하는 것 처럼, Javascript에서도 연산자에 우선순위가 존재.

*, /, %가 +, -보다 먼저 계산됨.

 

관계연산자, 논리연산자에도 연산에 우선순위가 있고 괄호를 사용해 우선순위를 지정할 수 있다.


우선순위 순으로 정리한 연산자

  • ++, --
  • !
  • *, /, %
  • +, -
  • <, <=, >, >=
  • ==, !=
  • &&
  • ||

ex)

2*3>4+5 && 6/3 == 2 || !false

                                  ↓

2*3>4+5 && 6/3 == 2 || true

↓    ↓       ↙

 6 > 9  && 2== 2 || true

   ↓          

 false  && true || true

         

         false || true

              

              true


괄호

우선순위를 명시하기 위해 괄호를 사용. 괄호안의 계산식이 먼저 계산됨.

부가적인 효과로, 코드의 가독성 향상시키거나 연산자 우선순위 실수를 방지한다.

 

height >= 180 && gender =="male" || height >= 165 &&gender=="female"

(height >= 180 && gender =="male")|| (height >= 165 &&gender=="female")

두 문장 모두 결과값은 같으나 아래식이 더 가독성이 좋아 실수를 방지한다.