연산자 우선 순위
수학에서 곱하기를 더하기보다 먼저 계산하는 것처럼, Javascript에서도 연산자에 우선순위가 존재한다.
아래의 리스트는 우선 순위가 높은 것부터 낮은 순이며, 같은 순위일때는 먼저 적힌 연산자가 우선이다.
- ( )
- ++, - -
- !
- *, /, %
- +, -
- <, <=, >, >=
- ==, !=
- &&
-
4 * 2 > 3 + 5 && (7 + 3) / 2 == 5 || !false
위의 코드의 실행 순서는 다음과 같다.
4 * 2 > 3 + 5 && 10 / 2 == 5 || !false
4 * 2 > 3 + 5 && 10 / 2 == 5 || true
8 > 3 + 5 && 10 / 2 == 5 || true
8 > 3 + 5 && 5 == 5 || true
8 > 8 && 5 == 5 || true
false && 5 == 5 || true
false && true || true
false || true
true
Reference
괄호( )는 우선 순위를 부여할 때 사용하기도 하지만, 코드의 가독성을 높이기 위해서도 사용하는 것이 좋다. 식이 길어질 경우 우선 순위를 알더라도 헷갈리기 쉬우므로 먼저 계산되어야 할 부분이다 명시도 하고, 안전장치의 역할도 할 수 있기 때문이다.