이동:

연산자 우선순위는 연산자를 실행하는 순서를 결정합니다. 우선순위가 높은 연산자가 먼저 실행됩니다.

결합성

결합성은 같은 우선순위를 가진 연산자의 처리 순서를 결정합니다. 다음 형태의 표현식을 살펴보겠습니다.

a 연산자 b 연산자 c

좌결합성(왼쪽에서 오른쪽)은 위의 표현식이 (a 연산자 b) 연산자 c로 처리됨을 의미합니다. 반면 우결합성(오른쪽에서 왼쪽)을 가진다면 a 연산자 (b 연산자 c)로 해석합니다. 할당 연산자는 우결합성을 가지므로 다음과 같이 작성할 수 있습니다.

a = b = 5;

할당 연산자는 할당한 값을 반환하기 때문에, 위 코드를 실행하면 ab에 모두 5를 할당합니다. 순서대로 살펴보자면 처음에 b가 5로 설정되고, ab = 5가 반환하는 값, 즉 그 할당 연산자의 오른쪽 피연산자인 5로 할당됩니다.

다음 표는 높은 우선순위(20)부터 낮은 우선순위(1) 순서로 정렬됐습니다.

우선순위 연산자 유형 결합성 연산자
20 그룹 없음 ( … )
19 멤버 접근 좌결합성 … . …
계산된 멤버 접근 좌결합성 … [ … ]
new (매개변수 리스트 존재) 없음 new … ( … )
함수 호출 좌결합성 … ( )
18 new (매개변수 리스트 생략) 우결합성 new …
17 후위 증가 없음 … ++
후위 감소 … --
16 논리 NOT 우결합성 ! …
비트 NOT ~ …
단항 양부호 + …
단항 부정 - …
전위 증가 ++ …
전위 감소 -- …
typeof typeof …
void void …
delete delete …
await await …
15 거듭제곱 우결합성 … ** …
14 곱셈 좌결합성 … * …
나눗셈 … / …
나머지 … % …
13 덧셈 좌결합성 … + …
뺄셈 … - …
12 비트 왼쪽 시프트 좌결합성 … << …
비트 오른쪽 시프트 … >> …
비트 부호 없는 오른쪽 시프트 … >>> …
11 미만 좌결합성 … < …
이하 … <= …
초과 … > …
이상 … >= …
in … in …
instanceof … instanceof …
10 동등 좌결합성 … == …
부등 … != …
일치 … === …
불일치 … !== …
9 비트 AND 좌결합성 … & …
8 비트 XOR 좌결합성 … ^ …
7 비트 OR 좌결합성 … | …
6 논리 AND 좌결합성 … && …
5 논리 OR 좌결합성 … || …
4 조건 우결합성 … ? … : …
3 할당 우결합성 … = …
… += …
… -= …
… **= …
… *= …
… /= …
… %= …
… <<= …
… >>= …
… >>>= …
… &= …
… ^= …
… |= …
2 yield 우결합성 yield …
yield* yield* …
1 쉼표 / 시퀀스 좌결합성 … , …

문서 태그 및 공헌자

이 페이지의 공헌자: alattalatta, mdnwebdocs-bot, .
최종 변경자: alattalatta,