본문 바로가기
Javascript

JAVACSRIPT 산술연산자

by titlejjk 2023. 4. 24.

연산자

자바스크립트는 여러 종류의 연산을 위한 다양한 연산자(operator)를 제공하고 있다.

산술 연산자(arithmetic operator)

산술 연산자는 모두 두 개의 피연산자를 가지는 이항 연산자이며, 피연산자들의 결합 방향은 왼쪽에서 오른쪽이다.

🙋‍♂️항이란 해당 연산의 실행이 가능하기 위해 필요한 값이나 변수를 의미한다.

따라서 이항 연산자란 해당 연산의 실행을 위해서 두 개의 값이나 변수가 필요한 연산자를 의미한다.

산술 연산자 설명

+ 왼쪽 피연산자의 값에 오른쪽 피연산자의 값을 더함.
- 왼쪽 피연산자의 값에서 오른쪽 피연산자의 값을 뺌.
* 왼쪽 피연산자의 값에 오른쪽 피연산자의 값을 곱함.
/ 왼쪽 피연산자의 값을 오른쪽 피연산자의 값으로 나눔.
% 왼쪽 피연산자의 값을 오른쪽 피연산자의 값으로 나눈 후, 그 나머지를 반환함.

예제 👉

var x = 10, y = 4;
document.write(x + y); // 14
document.write(x - y); // 6
document.write(x * y); // 40
document.write(x / y); // 2.5
document.write(x % y); // 2

 

연산자의 우선순위(operator precedence)와 결합 방향(associativity)

연산자의 우선순위는 수식 내에 여러 연산자가 함께 등장할 때, 어느 연산자가 먼저 처리될 것인가를 결정한다.

예제 👉기

  • 기본 처리 순서
  • ⇒ i = 3 + 4 * 5; 일 경우 곱셈인4 * 5 를 처리한 후에 + 3을 처리해준다.
  • 괄호(())를 사용한 순서 변경
  • ⇒ i = (3 +4) * 5; 일 경우 괄호안 (3 + 4)를 처리한 후에 * 5를 처리해준다.
  • 왼쪽에서 오른쪽으로 결합
  • ⇒ 3 + 4 - 5; 일 경우 3 + 4를 처리한 후에 - 5를 처리해준다.
  • 오른쪽에서 왼쪽으로 결합우선순위 연산자 설명 결합 방향 
    1 () 묶음(괄호) -
    2 . 멤버 접근 왼쪽에서 오른쪽으로
      new 인수 있는 객체 생성 -
    3 () 함수 호출 왼쪽에서 오른쪽으로
      new 인수 없는 객체 생성 오른쪽에서 왼쪽으로
    4 ++ 후위 증가 연산자 -
      -- 후위 감소 연산자 -
    5 ! 논리 NOT 연산자 오른쪽에서 왼쪽으로
      ~ 비트 NOT 연산자 오른쪽에서 왼쪽으로
      + 양의 부호 (단항 연산자) 오른쪽에서 왼쪽으로
      - 음의 부호 (단항 연산자) 오른쪽에서 왼쪽으로
      ++ 전위 증가 연산자 오른쪽에서 왼쪽으로
      -- 전위 감소 연산자 오른쪽에서 왼쪽으로
      typeof 타입 반환 오른쪽에서 왼쪽으로
      void undefined 반환 오른쪽에서 왼쪽으로
      delete 프로퍼티의 제거 오른쪽에서 왼쪽으로
    6 ** 거듭제곱 연산자 오른쪽에서 왼쪽으로
      * 곱셈 연산자 왼쪽에서 오른쪽으로
      / 나눗셈 연산자 왼쪽에서 오른쪽으로
      % 나머지 연산자 왼쪽에서 오른쪽으로
    7 + 덧셈 연산자 (이항 연산자) 왼쪽에서 오른쪽으로
      - 뺄셈 연산자 (이항 연산자) 왼쪽에서 오른쪽으로
    8 << 비트 왼쪽 시프트 연산자 왼쪽에서 오른쪽으로
      >> 부호 비트를 확장하면서 비트 오른쪽 시프트 왼쪽에서 오른쪽으로
      >>> 부호 비트를 확장하지 않고 비트 오른쪽 시프트 왼쪽에서 오른쪽으로
    9 < 관계 연산자(보다 작은) 왼쪽에서 오른쪽으로
      <= 관계 연산자(보다 작거나 같은) 왼쪽에서 오른쪽으로
      > 관계 연산자(보다 큰) 왼쪽에서 오른쪽으로
      >= 관계 연산자(보다 크거나 같은) 왼쪽에서 오른쪽으로
      instanceof 인스턴스 여부 판단 왼쪽에서 오른쪽으로
    10 == 동등 연산자 왼쪽에서 오른쪽으로
      === 일치 연산자 왼쪽에서 오른쪽으로
      != 부등 연산자 왼쪽에서 오른쪽으로
      !== 불일치 연산자 왼쪽에서 오른쪽으로
    11 & 비트 AND 연산자 왼쪽에서 오른쪽으로
    12 ^ 비트 XOR 연산자 왼쪽에서 오른쪽으로
    13     비트 OR 연산자
    14 && 논리 AND 연산자 왼쪽에서 오른쪽으로
    15      
    16 ? : 삼항 연산자 오른쪽에서 왼쪽으로
    17 = 대입 연산자(=, +=, -=, *=, /=, %=, <<=, >>=, >>>=, &=, ^=, =)
    18 ... 전개 -
    19 , 쉼표 연산자 왼쪽에서 오른쪽으로
    위 표에서 나온 순서대로 우선순위가 빠른 연산자가 가장 먼저 실행된다.
  • 또한, 같은 우선순위를 가지는 연산자가 둘 이상 있을 때에는 결합순서에 따라 실행 순서가 결정된다.
  • ⇒ a = b = c; 일 경우 b = c를 처리한 후에 a방향 쪽으로 처리해 준다.

'Javascript' 카테고리의 다른 글

JAVASCRIPT 대입연산자  (0) 2023.04.24
JAVASCRIPT 논리연산자  (0) 2023.04.24
JAVASCRIPT 변수의 유효범위  (0) 2023.04.21
JAVASCRIPT 배열  (0) 2023.04.21
JAVASCRIPT 함수  (0) 2023.04.21

댓글