피연산자(operand)는 연산자가 연산을 수행하는 대상이다. (인수(argument) 라고 하기도 한다.)
5 * 2 가 있다면 *
연산자의 앞 5
와 뒤 2
가 각각 피연산자가 된다.
모든 연산자는 값을 반환한다.
단항 연산자
-
연산자는 단항 뺄셈 연산자 이면서 이항 연산자이기도 하다.
연산자는 단항 덧셈 연산자 이면서 이상 연산자이기도 하고, 연결 연산자 이기도 하다. 또한 숫자로 형 변환을 수행할 수도 있다.
연산자 우선순위
- 우선순위 테이블
증감연산자
++, —
연산자의 위치에 따라 값이 변한다.
- 전위형 ++cnt = 먼저 더한 후 cnt를 반환(더하기가 앞에 있으니 먼저 더하고 cnt 반환)
- 휘위형 cnt++ = cnt를 반환 후 더함(cnt가 앞에 있으니 cnt를 반환하고 더함)
즉 연산자가 변수의 어디에 있냐를 보면 쉽게 이해할 수 있다.
비트연산자(bitwise operator)
인수를 32비트 정수로 변환하여 이진 연산을 수행
- 비트 AND -
&
- 비트 OR -
|
- 비트 XOR -
^
- 비트 NOT -
~
- 왼쪽 쉬프트(Left Shift) -
<<
- 오른쪽 쉬프트(Right Shift) -
>>
- 부호 없는 오른쪽 쉬프트(Zero-Fill Shift) -
>>>
잘 사용할 일이 없어 그냥 넘어가는데, 필요하다면 MDN 사이트를 이용하라
복합 할당 연산자
let n = 2;
n = n + 5;
n = n * 2;
위 예제처럼 계산한 값을 같은 변수에 넣어야 할 경우가 많다. 이럴 때 사용 가능한 것이 복합 할당 연산자이다.
+=
, *=
연산자를 이용해 위 식을 바꿔보자.
let n = 2;
n += 5;
n *= 2;
/=
, -=
도 사용 가능
우선 순위에 의한 계산순서 연습
let n = 2;
n *= 3 + 5; // 결과값 구하기
쉼표 연산자
쉼표 연산자 ,
는 여러 표현식을 코드 한 줄에서 평가할 수 있게 해준다. 단 마지막 표현식만 반환한다는 점에 주의 할 것
let a = (1 + 2, 3 + 4);
console.log(a); // 7 (3 + 4)의 결과만 반환
1 + 2는 평가되어 반환되지만, 뒤에 연달아 나오는 3 + 4가 다시 a에 반환되에 7의 결과가 나오는 것
쉼표 연산자를 사용하는 대표적인 것이 for
문
for (a = 1, b = 3, c = a * b; a < 10; a++) {
...
}
'TIL > NodeJS' 카테고리의 다른 글
[수정 중]NodeJS로 만든 크롤링 모듈 (0) | 2020.03.18 |
---|---|
[JavaScript]자료형(Data type) (0) | 2020.03.17 |
[실습]NodeJS + EXPRESS + MySQL 을 이용한 게시판 만들기 4(MVC) (0) | 2020.03.15 |
[실습]NodeJS + EXPRESS + MySQL 을 이용한 게시판 만들기 3(MVC) (0) | 2020.03.15 |
[실습]NodeJS + EXPRESS + MySQL 을 이용한 게시판 만들기 2(MVC) (0) | 2020.03.14 |