데이터 타입

솜사탕·2023년 4월 30일
1

JavaScript

목록 보기
4/23

데이터 타입이란?

줄여서 '타입'이라고도 하며, 값의 종류를 말한다.

자바스크립트의 모든 값은 데이터 타입을 가지며, ES6는 7개의 타입을 제공한다.
그 타입은 '원시타입' 과 '객체타입'으로 분류한다.

원시 타입 리스트데이터 타입
원시 타입숫자 타입말 그대로 숫자 정수, 실수 구분 없이 숫자 타입만 존재
원시 타입문자열 타입문자열 ("안녕하세요")
원시 타입불리언 타입ture or false (참 또는 거짓)
원시 타입undefined 타입var 키워드로 선언된 변수에 암묵적으로 할당 되는 값
원시 타입null 타입의도적으로 값이 없다는것을 명시할 때 사용하는 값
원시 타입심벌 타입ES6에서 추가된 7번째 타입

객체 타입 리스트데이터 타입
객체 타입객체, 함수, 배열 등

숫자타입

1, 5, 15, 19.5
(자바스크립트에선 모든 수를 실수로 처리한다.)

console.log(10 === 10.0) // true
console.log(10 === 10.1) // false
console.log(7 / 4) // 1.75

숫자 타입은 추가적으로 세 가지의 특별한 값도 표현이 가능하다.

console.log(10 / 0 ) // Infinity(양의 무한대)
console.log(10 / -0) // -Infinity(음의 무한대)
console.log(10 * "뭐임마") // NaN(Nat a Number)

문자열 타입

말 그대로 하나의 텍스트 데이터를 의미한다
우리가 아는 그 글자
다만 자바스크립트에서 문자열을 출력하기 위해 각 문단 첫과 끝에
' ' 또는 " " 또는 ``(백틱)으로 텍스트를 감싸야 한다.

문자열 리스트
var text = '선넘지마셈'; // (작은 따옴표)
var text = "죄송"; // (큰 따옴표)
var text = `어쩔티비`; // 백틱(ES6)

템플릿 리터럴

ES6 부터 템플릿 리터럴 이라는 새로운 문자열 표기법이 도입 되었다.
멀티라인, 표현십 삽입, 태그드 템플릿 등 편리한 문자열 처리 기능을 제공한다.
이 리터럴은 런타임에 일반 문자열로 변환되어 처리된다.

[ 템플릿 리터럴 예제 ]
var text = `안녕하세요`;
console.log(text) // 안녕하세요

[ 멀티라인 문자열 예제 ]
var template = `<ul>
  <li><a href="#">Home</a><li>
</ul>`;

console.log(template)

<ul>
  <li><a href="#">Home</a></li>
</ul>

표현식 삽입

문자열은 문자열 연산자 + 를 사용해 연결할 수 있다.
피연산자 중 하나 이상이 문자열인 경우 문자열 연결 연산자로 동작하며
그 외의 경우엔 덧셈 연산자로 동작한다.

var text = "h";
var twoText = "i";
// ES5 문자열 연결
console.log(text + twoText) // hi
// ES6 표현식 삽입
console.log(`${text}${twoText}`) // hi

주의사항:표현식 삽입은 무조건 템플릿 리터럴 내에서 사용해야 하며, 일반 문자열에서 사용할 경우, 문자열로 취급된다.

불리언 타입

불리언 타입의 값은 논리적 참, 거짓을 나타내며
true or false만 존재한다.

var text = true;
console.log(text) // true

var text = false;
console.log(text) // false

undefined 타입

undefined 타입의 값은 undefined가 유일하다.

var키워드로 변수를 선언할 경우 해당 변수는 호이스팅이 되어 해당 스코프의 최상단으로 끌어올려지고, 암묵적으로 undefined로 초기화 된다.
다만 let과 const는 var키워드와 달리 블록 레벨 스코프를 가지고 있기 때문에 선언과 동시에 초기화가 되지 않는다.

또한 변수를 선언할때, 개발자가 변수를 선언한 이후 값을 할당하지 않는다면 그 변수는 자바스크립트 엔진이 undefined로 초기화 된다

var text;
console.log(text) // undefined

null 타입

null 타입의 값은 null이 유일하며, 자바스크립트는 대소문자를 구별하므로
null은 Null, NULL등과 다르다.
null은 앞서 의도적으로 명시 할때 사용되며 변수에 null을 할당한다는 것은 변수가 이전에 참조하던 값을 더 이상 참조하지 않겠다는 의미다.

var text = 'hi';
console.log(text) // hi

text = null;
console.log(text) // null
profile
공부공부공부공부공부공부

0개의 댓글