자료형


문자열

'Hello' 
"안녕" 
`줄바꿈 
가능`

-typeof
값의 자료형을 반환한다.

typeof "문자열";
// < "string"

-back slash
역슬래시는 문자열에서 특수한 역할을 한다. 각각의 상황에 맞게 활용할 수 있어야 한다.

'hello\n world' // \n 줄바꿈
'hello\' world' // \' 문자열 내에 '를 쓰고 싶을 때
'hello\\ world' // \\ 문자열 내에 \를 쓰고 싶을 때

-연산
문자열과 문자열은 연산이 가능하다. +, -, *, /, % 연산이 모두 가능하다.

'딸기' + '바나나'
// < "딸기바나나"

'12' + '34'
// < "1234"

숫자

-NaNNot a Number라는 의미로, 숫자가 아니라는 의미로 쓰이는 숫자이다. NaN의 자료형은 숫자이다.

-연산
parseIntNumber는 문자열을 숫자로 변환하여 사용하고 싶을 때 사용한다. 숫자와 문자열을 연산하게 되면 숫자가 문자열로 형 변환된다.

'12' + '34' // '1234'
parseInt('12') + 34 // 46
Number('12') + 34 // 46 
1 + 3 // 덧셈
4 - 2 // 뺄셈
5 * 5 // 곱셈
10 / 3 // 나눗셈
6 * 2 // 나머지
3 ** 2 // 제곱

-연산자 우선순위

우선순위 연산자
20 ()(그룹화)
19 ., [], new, ()함수 호출
18 new(인수 없이)
17 ++(후위), —(후위)
16 !, ~, +(단항), -(단항), ++(전위), —(전위), typeof, void, delete, await
15 **
14 *, /, %
13 +(다항), -(다항)
12 <<. >>, >>>
11 <, <=, >, >=, in, instanceof
10 ==, !=, ===, !==
9 &
8 ^
7
6 &&
5
4 ? :
3 =, +=, -=, **=, *=, /=, %=, <<=, >>=, >>>=, &=, ^=,
2 yield, yield*
1 ,

-부동소수점
컴퓨터는 큰 범위의 숫자까지 표현하기 위해 부동 소수점 방식으로 실수를 표현한다. 하지만 부동 소수점 방식을 사용할 경우 오차가 존재한다는 문제가 있다. 이것은 자바스크립트 뿐만 아니라 모든 프로그래밍 언어에서 나타나는 오류이다.

불 값

-참은 true, 거짓은 false를 나타내는 논리 값이다.

-연산

3 < 5 // true
6 == 8 // false
NaN == NaN // false
'1' == 1 // true (값만 비교 <- 형 변환)
'1' === 1 // flase (값과 자료형이 같은지 비교)

-논리 연산자

(10 > 5) && (6 < 8 ) // true (AND)
(10 > 5) || (6 > 8 ) // false (OR)
!true // flase (NOT)

-형 변환
!! 연산자를 사용하면 boolean으로 형 변환이 되는데, boolean으로 형 변환했을 때 false가 되는 값들이 있다.

!!false // false
!!'' // false
!!0 // false
!!NaN // false
!!undefined // false
!!null // false

빈 값

-undefined
반환할 결과 값이 없을 때 undefined가 반환된다.

-null
빈 값을 의미한다. undifined와 null은 둘 다 빈 값이지만 다른 자료형이다.