모던 자바스크립트 Deep Dive. 04 (연산자)

Dana·2021년 11월 30일
0

Deep Dive

목록 보기
4/5
post-thumbnail

산술 연산자

이항 산술 연산자(어떤 산술 연산을 해도 피연산자의 값이 바뀌는 경우는 없고 언제나 새로운 값을 만든다.)
+ : 덧셈
- : 뺄셈
/ : 나눗셈
* : 곱셈
% : 나머지
단항 산술 연산자
++ : 증가
-- : 감소
+ : 어떠한 효과도 없다. 음수를 양수로 반전하지도 않는다.
- : 양수를 음수로, 음수를 양수로 반전한 값을 반환한다.
문자열 연결 연산자

// 문자열 연결 연산자
'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"
profile
웹개발

0개의 댓글