반응형
오늘은 자바스크립트 데이터 타입과 연산자에 대해 알아보자~~
데이터 타입
- Number
- 정수 또는 실수형 숫자를 표현하는 자료형
- NaN
- Not-A-Number(숫자 아님)을 나타냄
- Number.isNaN()의 경우 주어진 값의 유형이 Number거나 값이 NaN이면 true, 아니면 false를 반환
- String
-
- 문자열을 표현하는 자료형
- 작음 따옴표 또는 큰 따옴표 모두 가능
- 곱셈, 나눗셈, 뺄셈은 안되지만 덧셈을 통해 문자열을 붙일 수 있음
- 줄바꿈 하려면 \n 사용
- Template Literal을 사용하여 문자열 사이에 변수도 삽입 가능
- Template Literal(템플릿 리터럴)
- 내장된 표현식을 허용하는 문자열 작성 방식
- Backtick(``)을 이용
- $ 와 중괄호로 표기하여 (${expression}) 표현식 가능
const age=10
const message =`홍길동은 ${age}세입니다.`
console.log(message)
- Empty Value
- 값이 존재하지 않음을 표현하는 값으로 null과 undefined가 존재
- 동일한 역할을 하는 이 두개의 키워드가 존재하는 이유는 그냥 자바스크립트의 설계 실수라고 함
- 하지만 굳이 차이를 알아보자면... 구글링 하시길 ㅎ........
- Boolean
- 참과 거짓을 표현하는 값
- 조건문 또는 반복문에서 유용하게 사용
- 조건문 또는 반복문에서 boolean이 아닌 데이터 타입은 자동 형변환 규칙에 따라 true, false로 변환됨
연산자
- 동등 연산자(==, 추상 동등 연산자)
- 두 피연산자가 같은 값으로 평가되는지 비교 후 boolean 값을 반환
- 비교할 때 암묵적 타입변환을 통해 타입을 일치시킨 후 같은 값인지 비교
- 두 피연산자가 모두 객체일 경우 메모리의 같은 객체를 바라보는지 판별
- 밑에 예제와 같이 예상치 못한 결과가 발생할 수 있으므로 특별한 경우를 제외하고 사용하지 않음
1 == '1'; *// true*
1 == [1]; *// true*
1 == true; *// true*
0 == ''; *// true*
0 == '0'; *// true*
0 == false; *// true*
- 일치 연산자(===, 완전 동등 연사자)
- 두 피연산자의 값과 타입이 모두 같은 경우 true를 반환
- 같은 객체를 가리키거나, 같은 타입이면서 같은 값인지를 비교
- 엄격한 비교가 이뤄지며 암묵적 타입 변환이 발생하지 않음
- 논리 연산자
- 세 사지 논리 연산자로 구성
- and 연산은 '&&'연산자
- or 연산은 '||' 연산자
- not 연산은 '!' 연산자
- 세 사지 논리 연산자로 구성
- 삼항 연산자(Ternary Operator)
- 3개의 피연산자를 사용하여 조건에 따라 값을 반환하는 연산자
- 가장 앞의 조건식이 참이면 : 앞의 값이 반환되며, 그 반대일 경우 : 뒤의 값이 반환되는 연산자
- 삼항 연산자의 결과가 값이기 때문에 변수에 할당 가능
true ? 1 : 2 //1
false ? 1 : 2 //2
const result = Math.PI > 4 ? 'Yep' : 'Nope'
console.log(result) // Nope
반응형
'개발💻 > JavaScript' 카테고리의 다른 글
[JS] JavaScript 정리하기 (5) - 배열(Array) (0) | 2023.09.19 |
---|---|
[JS] JavaScript 정리하기 (4) - 함수 (0) | 2023.09.18 |
[JS] JavaScript 정리하기 (3) - 조건문과 반복문 (0) | 2023.09.18 |
[JS] JavaScript 정리하기 (1) - 변수와 식별자 (0) | 2023.09.15 |