연산자는 하나 이상의 표현식을 연산해 하나의 값을 만듭니다.
이 때 연산의 대상을 피연산자(operand)라고 합니다.
+, -, *, /, %, ** // binary arithmetic operator
++, --, +, - // unary arithmetic operator
=, +=, -=, /=, %=
'a' + 'b'; // 'ab'
'a' + 1; // 'a1'
'1' + 2; // '12'
=== // strict equality
!== // 값과 타입을 비교
== // loose equality
!= // 값 비교
<, >, <=, >= // 대소관계 비교 연산자
|| // 논리합(OR) 연산자
&& // 논리곱(AND) 연산자
! // 부정(NOT) 연산자
() // 그룹 연산자는 자신의 피연산자인 표현식을 가장 먼저 평가한다.
typeof '' // 'string'
typeof 1 // 'number'
typeof true // 'boolean'
typeof undefined // 'undefined'
typeof NaN // 'number'
typeof null // 'object'
typeof symbol() // 'symbol'
typeof [] // 'object'
typeof {} // 'object'
typeof function () {} // 'function'
// typeof 연산자는 값의 데이터 타입을 문자열로 반환합니다.
// 반환되는 값은 위와 같은 7가지 중 하나로 데이터 타입과 정확히 일치하지는 않습니다.