산술 연산자
이항 산술 연산자(어떤 산술 연산을 해도 피연산자의 값이 바뀌는 경우는 없고 언제나 새로운 값을 만든다.)
+
: 덧셈
-
: 뺄셈
/
: 나눗셈
*
: 곱셈
%
: 나머지
단항 산술 연산자
++
: 증가
--
: 감소
+
: 어떠한 효과도 없다. 음수를 양수로 반전하지도 않는다.
-
: 양수를 음수로, 음수를 양수로 반전한 값을 반환한다.
문자열 연결 연산자// 문자열 연결 연산자 '1' + '2' // '12' '1' + 2 // '12' // 산술 연산자 1 + 2 // 3 1 + true // 2 (true → 1) 1 + false // 1 (false → 0) true + false // 1 (true → 1 / false → 0) 1 + null // 1 (null → 0) 1 + undefined // NaN (undefined → NaN)
할당 연산자
변수++
: 변수 값에 1 더하기(후위)
++변수
: 변수 값에 1 더하기(전위)
변수--
: 변수 값에 1 빼기(후위)
--변수
: 변수 값에 1 빼기(전위)
+=
: 변수 값에 더한 결과값을 대입
-=
: 변수 값에 뺀 결과값을 대입
*=
: 변수 값에 곱한 결과값을 대입
/=
: 변수 값에 나눈 결과값을 대입
%=
: 변수 값에 나머지를 구한 결과값을 대입비교 연산자
==
: 동일한 값(10=='10'은 true)일 경우 true
===
: 동일한 값과 동일한 타입일 경우 true
!=
: 부동등 비교
!==
: 불일치 비교논리 연산자
!
: 부정
&&
: 논리곱
||
: 논리합false || true = true true && false = false //하나라도 false면 false! false || false = false true && true = true !true = false !((true && false) || (true && false)) = true let x = 10 !((x % 5 == 0 && x % 2 == 0) || (x / 2 == 5 && false)) = false let y = 10 (false && y % 2 == 0) && (y / 2 == 5 && false) = false
드 모르간 법칙
- 복잡한 표현식을 가독성 좋은 표현식으로 변환해준다
!(x || y) === (!x && !y)
typeof 연산자
- 피연산자의 데이터 타입을 문자열로 반환
typeof '' // "string" typeof 1 // "number" typeof NaN // "number" typeof true // "boolean" typeof undefined // "undefined" typeof Symbol() // "symbol" typeof null // "object" typeof [] // "object" typeof {} // "object" typeof new Date() // "object" typeof /test/gi // "object" typeof function () {} // "function"