
JavaScript에서의 연산자 우선순위
JavaScript에서 연산자 우선순위는 표현식에서 여러 연산자가 함께 있을 때 어떤 연산이 먼저 수행되는지를 결정합니다. 우선순위가 높은 연산자가 먼저 평가되며, 같은 우선순위를 가진 연산자는 연산 방향(왼쪽에서 오른쪽 또는 오른쪽에서 왼쪽)을 따릅니다.
아래는 JavaScript에서 사용되는 주요 연산자들의 우선순위를 나타낸 표입니다. 높은 우선순위는 더 높은 순위에 위치합니다.
(15) 그룹 연산자
() : 괄호 안의 식을 가장 먼저 평가합니다.console.log(2 + 3 * 4); // 14 (3*4가 먼저 평가됨)
console.log((2 + 3) * 4); // 20 (괄호가 먼저 평가됨)
(14) 멤버 접근, 함수 호출
. : 객체의 프로퍼티에 접근합니다.[] : 배열 또는 객체의 프로퍼티에 접근합니다.() : 함수 호출에 사용됩니다.console.log(Math.PI); // 멤버 접근
let arr = [1, 2, 3];
console.log(arr[0]); // 배열 접근
console.log(Math.max(1, 2)); // 함수 호출
(13) new 연산자 (매개변수 없음)
new : 객체 인스턴스를 생성합니다.let date = new Date();
(12) 단항 연산자, 논리 NOT
+ : 양수로 변환합니다.- : 음수로 변환합니다.! : 논리 부정typeof, void, deletelet x = 10;
console.log(-x); // -10
console.log(!true); // false
(11) 산술 연산자
** : 거듭제곱console.log(2 ** 3); // 8
(10) 곱셈, 나눗셈, 나머지
*, /, %console.log(10 % 3); // 1
(9) 덧셈, 뺄셈
+, -console.log(10 + 5); // 15
(8) 시프트 연산자
<<, >>, >>>(7) 관계 연산자
<, <=, >, >=console.log(5 > 3); // true
(6) 동등 비교 연산자
==, !=, ===, !==console.log(5 == '5'); // true
console.log(5 === '5'); // false
(5) 논리 연산자
&&console.log(true && false); // false
(4) 논리 연산자
||console.log(true || false); // true
(3) 조건부 연산자
?:let age = 18;
let isAdult = age >= 18 ? 'Yes' : 'No';
console.log(isAdult); // Yes
(2) 할당 연산자
=, +=, -=, *=, /=, %=, **=let value = 10;
value += 5;
console.log(value); // 15
(1) 쉼표 연산자
,let a = (1, 2, 3);
console.log(a); // 3
JavaScript에서 연산자 우선순위를 이해하면 코드의 동작을 정확하게 파악할 수 있습니다. 우선순위를 명확히 하려면 괄호를 사용하여 연산의 순서를 지정하는 것이 좋습니다.