오늘 ONEUL
오늘의 개발
오늘 ONEUL
전체 방문자
오늘
어제
  • 오늘의 개발 (248)
    • 📝 TIL (121)
    • 💡 Projects (6)
      • 드로잉 게임 [눈치 코치 캐치!] (4)
      • 익명고민상담소 [대나무숲] (2)
    • 🌎 Web (47)
      • Spring (3)
      • Java (14)
      • JavaScript (16)
      • CSS (10)
      • HTML (4)
    • 📚 Database (7)
    • 👾 Trouble Shooting (3)
    • 📊 Algorithm&SQL (39)
    • 😺 Git (1)
    • 📖 Books (7)
      • 자바 객체 지향의 원리와 이해 (7)
    • 📁 ETC (2)
    • 되돌아보기 (15)

블로그 메뉴

  • 😺 Github
  • 🍀 NAVER Blog

인기 글

최근 댓글

최근 글

태그

  • Til
  • 항해99
  • JavaScript
  • MySQL
  • 자바스크립트
  • 자바
  • 알고리즘
  • 프로그래머스
  • Java
  • Algorithm

티스토리

hELLO · Designed By 정상우.
오늘 ONEUL

오늘의 개발

[JavaScript] 자바스크립트의 데이터 타입(Data type)
🌎 Web/JavaScript

[JavaScript] 자바스크립트의 데이터 타입(Data type)

2022. 3. 31. 04:47

데이터 타입이란?

타입(data type)이란 프로그램에서 다룰 수 있는 값의 종류를 의미한다. 변수에 대해 연산을 수행하려면 타입에 대해 아는 것이 중요하다.

 

 

 

 

데이터 타입

숫자(number)

  • 정수(-1, 0, 1), 실수(소수점이 있는 숫자), NaN(Not a Number, 숫자가 아님이라는 값)
  • 자바스크립트는 다른 언어와 다르게 정수와 실수를 따로 구분하지 않고, 모든 수를 실수 하나로만 표현한다.
let num1 = 100; // 소수점을 사용하지 않은 표현
let num2 = 100.00 // 소수점을 사용한 표현
// 둘 다 값은 100 이다

 

 

문자열(string)

  • 문자열은 작은따옴표(''), 큰따옴표(""), 백 틱(``)으로 둘러싸인 문자의 집합을 의미한다.
let str1 = '작은따옴포';
let str2 = "큰따옴포";
let str3 = `백틱`;

 

  • 숫자와 문자열의 연산도 가능하다. 이 때 자바스크립트는 숫자를 문자열로 자동 변환하여, 두 문자열을 연결하는 연산을 수행한다.
let num = 10;
let str = "JavaScript";
console.log(num + str); // 10JavaScript

 

 

불리언(boolean)

  • 참/거짓(true/false)을 표현한다.
let bool = true;

 

 

객체(object)

  • 자바스크립트의 기본타입은 객체(object)이다.
  • 1개 이상의 데이터가 특정 구조를 가지는 일종의 집합체이다.
let obj1 = {}; // 이 안에 특정형태를 만들 수 있음
let obj2 = new Object(); // 자바스크립트에서 제공하는 implicit(내장된) 객체

 

 

배열(array)

  • 대괄호로 이루어진 집합 데이터이다.
  • 순서와 길이를 갖는다.
let arr1 = [1,2]; // 대괄호 안에 콤마(,)로 분리된 데이터를 추가
let arr2 = new Array(); // 자바스크립트에서 제공하는 Array 객체

 

 

undefined

  • 값이 할당되지 않아 '타입'이 정해지지 않은 것을 의미한다.
  • 초기화되지 않은 변수나 존재하지 않는 값에 접근할 때 반환된다.
let undi1 = undefined;
let undi2; // 초기화 되지 않은 변수

 

 

null

  • object 타입이며, '값'이 정해지지 않은 것을 의미한다.
let nullable1 = null;
let nullable2 = "";

 

 

  • undefined와 null은 동등 연산자(==)와 일치 연산자(===)로 비교할 때 결과값이 다르므로 주의해야 한다.
  • 타입을 제외하면 같은 의미지만, 타입이 다르므로 일치하지는 않다.
null ==  undefined; // true
null === undefined; // false

 

 

 

 

typeof 연산자

typeof 연산자를 이용해서 데이터 타입을 알 수 있다.

console.log(`num1 : ${typeof num}`); // number
console.log(`Nan : ${typeof NaN}`); // number
console.log(`str1 : ${typeof str}`); // string
console.log(`bool : ${typeof bool}`); // boolean
console.log(`obj1 : ${typeof obj1}`); // object
console.log(`obj2 : ${typeof obj2}`); // object
console.log(`arr1 : ${typeof arr1}`); // object
console.log(`arr2 : ${typeof arr2}`); // object
console.log(`undi : ${typeof undi}`); // undifined
console.log(`undi2 : ${typeof undi2}`); // undifined
console.log(`nullable1 : ${typeof nullable1}`); // object
console.log(`nullable2 : ${typeof nullable2}`); // string

 

 

 

 

기본 자료형과 참조 자료형

  • 기본 자료형(Primitive Type) - 값을 저장하고 있는 위치가 메모리의 주소값이 가리키는 곳에 직접 할당되어 있다.
  • 참조 자료형(Reference Type) - 값이 저장되어 있는 메모리 주소값을 참조하는 주소 값이 할당되어 있다

 

 

 

 

※ 참고자료

http://www.tcpschool.com/javascript/intro

https://www.w3schools.com/js/default.asp

저작자표시

'🌎 Web > JavaScript' 카테고리의 다른 글

[JavaScript] 함수 선언문 vs 함수 표현식  (0) 2022.04.04
[JavaScript] 자바스크립트의 함수(Function)  (0) 2022.04.01
[JavaScript] 자바스크립트의 연산자(Operator)  (0) 2022.03.31
[JavaScript] 자바스크립트의 변수(Variable)  (0) 2022.03.31
[JavaScript] JavaScript란?  (0) 2022.03.31
    오늘 ONEUL
    오늘 ONEUL
    Backend Engineer ㅣ 어제보다 나은 오늘, 재밌는 건 오늘부터!

    티스토리툴바