JavaScript에서 연산자 우선 순위가 작동하는 방법

JavaScript에서 연산자 우선 순위가 작동하는 방법

2022-06-02 last update

12 minutes reading JavaScript
JavaScript에서 지정한 작업의 작업자 우선 순위는 작업자 우선 순위에 의해 결정됩니다. 작업자 우선 순위는 다른 작업자보다 우선순위가 높은 작업자를 결정합니다. 이렇게 하면 정확한 순서에 따라 수학 표현식을 계산하는 데 도움이 됩니다.
작업을 수행할 때 우선 순위가 높은 연산자는 우선 순위가 낮은 연산자의 작업 수로 간주됩니다.이것은 주어진 작업에서 우선 순위가 높은 연산자를 계산한다는 것을 의미한다.
이 문서에서는 JavaScript의 연산자 우선 순위에 대해 설명합니다.

JavaScript의 연산자 우선 순위


JavaScript로 표현식을 작성하기 전에 추가된 작업의 실행 순서를 파악하는 것이 중요합니다. 필요한 결과를 얻을 수 있기 때문입니다.
다른 연산자에 비해 각 JavaScript 연산자는 "중요한 수준"또는 "우선순위"가 있기 때문에 높은 우선순위의 연산자는 낮은 우선순위 연산자 앞에서 실행됩니다.그 밖에 전체 과정에서 관련된 또 다른 용어를'연관성'이라고 부른다.

JavaScript의 연산자 연관성


조작부호의 연관성은 조작의 방향을 결정하는데 조작은 왼쪽에서 오른쪽으로 또는 오른쪽에서 왼쪽으로 할 수 있다.
산술 연산자(예를 들어 덧셈, 곱셈, 뺄셈, 나눗셈)에는 왼쪽에서 오른쪽까지의 연관성이 존재한다.이에 비해 다른 연산자 (예: "NOT"연산자와 모든 부호 연산자) 는 "오른쪽에서 왼쪽으로"의 연관성을 바탕으로 한다.

예: JavaScript의 연산자 연관성


감법은 연관성이 매우 중요한 연산의 좋은 예이다.예를 들어, 9에서 4를 뺀 결과는 4에서 9를 뺀 결과와 다릅니다.
var x = 9 - 4;

var y = 4 - 9;

console.log(x)

console.log(y)

JavaScript의 연산자 우선 순위 수준


JavaScript의 연산자 우선 순위는 19 단계로 구분됩니다.자세한 내용은 다음 표를 참조하십시오.
운영자 유형
연관성
단일 운영자
우선순위
Grouping
해당되지 않음
( … )
십구
Optional chaining
왼쪽에서 오른쪽으로
?.
십팔
new(매개변수 목록 포함)
해당되지 않음
새로 만들기... (...)
Member Access
왼쪽에서 오른쪽으로
… . …
Computed Member Access
왼쪽에서 오른쪽으로
… [ … ]
Function Call
왼쪽에서 오른쪽으로
… ( … )
new(매개변수 목록 없음)
오른쪽에서 왼쪽으로
새로 만들기...
십칠
Postfix Increment
해당되지 않음
…++
십육
Postfix Decrement
… —
Prefix Increment
오른쪽에서 왼쪽으로
++ …
십오
Bitwise NOT (~)

Unary plus (+)
+ …
논리 NOT (!)
! …
Unary negation (-)
– …
Prefix Decrement
— …
무효
폐기하다.
기다리다
기다리다
delete
삭제...
typeof
유형...
Exponentiation (**)
오른쪽에서 왼쪽으로
… ** …
십사
Multiplication (*)
왼쪽에서 오른쪽으로
… * …
십삼
Remainder (%)
… % …
헤어지다
…/…
Addition (+)
왼쪽에서 오른쪽으로
… + …
십이
Subtraction (-)
… – …
Bitwise Left Shift (<<)
왼쪽에서 오른쪽으로
… << …
십일
Bitwise Right Shift (>>)
… >> …
Bitwise Unsigned Right Shift (>>>)
… >>> …
Greater Than (>)
왼쪽에서 오른쪽으로
… > …

빼기Than (>)
… < …
Greater Than Or Equal (>=)
… >= …
빼기Than Or Equal (<=)
… <= …
instanceof
...실례...
안에 있다
...에서
Inequality (!=)
왼쪽에서 오른쪽으로
… != …

Strict Inequality (!==)
… !== …
Strict Inequality (===)
… === …
Equality (==)
… == …
Bitwise AND (&)
왼쪽에서 오른쪽으로
… & …
팔.
Bitwise XOR (^)
왼쪽에서 오른쪽으로
… ^ …
칠.
Bitwise OR (|)
왼쪽에서 오른쪽으로
… | …
육.
Logical AND (&&)
왼쪽에서 오른쪽으로
… && …
오.
Nullish coalescing operator (??)
왼쪽에서 오른쪽으로
… ?? …
사.
Logical OR (||)
왼쪽에서 오른쪽으로
… || …
Conditional (ternary) operator
오른쪽에서 왼쪽으로
… ? … : …
삼.
Assignment
오른쪽에서 왼쪽으로
… = …
이.
… += …
… -= …
… **= …
… *= …
…/= …
… %= …
… <<= …
… >>= …
… >>>= …
… &= …
… ^= …
… |= …
… &&= …
… ||= …
… ??= …
yield
오른쪽에서 왼쪽으로
생산량
yield*
생산량*...
Sequence/쉼표
왼쪽에서 오른쪽으로
… , …
일.
 

예: JavaScript에서 연산자 우선 순위가 작동하는 방법


다음 표현식을 고려하십시오.
4 + 5 - 10 + 7 * 4 + 3
우리는 상기 표현식에 세 개의 "+"덧셈 연산자의 실례를 추가했다.연산자 우선순위가 없는 상황에서 상술한 표현식은 서로 다른 값을 생성할 수 있다.그러나 우리는 우선순위에 따라 그것을 해결할 것이다.
이전 절에서 설명한 표에 따르면 곱셈 연산자 "*"의 우선순위는 가감 연산자의 우선순위보다 높기 때문에 먼저 곱셈 연산자를 실행합니다.덧셈 연산자와 뺄셈 연산자는 같은 우선순위를 가지며 이는 같은 수준에 있음을 의미하며 JavaScript는 왼쪽에서 오른쪽으로 계산합니다.
JavaScript는 지정된 표현식을 계산하기 위해 다음 단계를 막후에서 수행합니다.
먼저 28과 같은 7*4를 곱한 다음 방정식을 다음과 같이 업데이트합니다.
4 + 5 - 10 + 28 + 3
다음은 "4+5"덧셈 연산부터 시작하여 "왼쪽에서 오른쪽"방향으로 표현식을 계산합니다. 결과는 "9"입니다.
9 - 10 + 28 + 3
그런 다음 "-2"값이 생성된 "9"에서 "10"을 빼십시오.
-1 + 28 + 3
이 작업을 수행하면 -1에서 28이 제거됩니다.
27 + 3
마지막 단계에서 숫자 "27+3"에 대한 덧셈 작업을 수행한 결과 "30":

JavaScript에서 연산자 우선 순위 작업과 관련된 기본 정보를 제공합니다.당신은 필요에 따라 이 주제를 더욱 토론할 수 있습니다.

결론


JavaScript에서는 각 조작부호에 우선순위가 있습니다. 그 작업 방식은 낮은 우선순위 조작부호 이전에 높은 우선순위 조작부호를 실행하는 것입니다. 높은 우선순위 조작부호는 낮은 우선순위 조작부호의 조작수로 간주됩니다.연산자 우선순위는 정확한 순서에 따라 수학 표현식을 계산하는 데 도움이 된다.이 문서에서는 JavaScript의 연산자 우선 순위 작업에 대해 설명합니다.