[JavaScript] 자료형 ✅

parkheeddong·2023년 4월 30일

JavaScript

목록 보기
3/26
post-thumbnail

자바스크립트의 자료형은 원시형과 객체형으로 나뉜다.

객체형을 제외한 다른 자료형은 문자열이든 숫자든 한 가지만 표현할 수 있기 때문에 원시(primitive) 자료형이라 부른다.



1. Number (숫자)

const age = 32;				
const temperature = 32.3;
const infinity = Infinity;
const ninfinity = -Infinity;

console.log(typeof age);         // number
console.log(typeof temperature); // number
console.log(typeof infinity)     // number
console.log(typeof ninfinity)    // number

Infinity, -Infinity 등 특수한 숫자 값도 존재한다.



2. String (문자열)

1) 따옴표

개행/ 탭/ 백슬래시를 하고 싶으면, \n, \t, \\ 를 사용한다.

let clouds = '하늘 \n 구름';
let clouds = '하늘 \t 구름';
let clouds = '하늘 \\ 구름';

2) 백틱

백틱을 이용한 방식을 '템플릿 리터럴'이라고 한다!

백틱을 이용하면 \n, \t, \\ 을 이용하지 않아도 작성한 그대로 출력된다.

const clouds = `하늘
맑음`

console.log(clouds);

const groupName = '소녀시대';
console.log(`${groupName} 태연`);


3. Boolean (불리언)

불린형(논리 타입)은 true와 false 두 가지 값밖에 없는 자료형이다.

const isTrue = true;
const isFalse = false;

console.log(typeof isTrue); // boolean


4. undefined

undefined는 '값이 할당되지 않은 상태’를 나타낼 때 사용한다. (즉 선언만 하고 할당 x)
변수는 선언했지만, 값을 할당하지 않았다면 해당 변수에 undefined가 자동으로 할당된다.

let noInit;

console.log(noInit); // 값도 undefined
console.log(typeof noInit); // 타입도 undefined


5. null

undefined처럼 값이 없다는 뜻이지만, js에서는 개발자가 명시적으로 없는 값으로 초기화할때 사용된다.

let init = null;
console.log(init);  // 값은 null
console.log(typeof init);   
// 타입은 object -> javascript 자체의 버그이다..! 


6. Symbol (심볼)

유일무이한 값을 생성할 때 사용한다.

다른 primitive 값들과 다르게 Symbol 함수를 호출해서 사용한다.

 const symbol1 = Symbol('1');
 const symbol2 = Symbol('2');

 console.log(symbol1 === symbol2); // false -> symbol1, symbol2 각각 유일한 값 생성



7. Object (객체)

자바스크립트의 특수한 자료형이다.
Function, Array, Object를 포함한다.

1) Object : key : value의 쌍으로 이뤄진다.

 const dictionary = {
    red: '빨간색', // key = red, value = '빨간색'
    orange: '주황색',
    yellow: '노란색',
  }

  console.log(dictionary);
  console.log(dictionary['red']); // 빨간색
  console.log(typeof dictionary); // object

2) Array : 값을 리스트로 나열한다.


const membersArr = [
    '짱구',
    '훈이',
    '수지',
]

console.log(membersArr); // [ '짱구', '훈이', '수지' ]
membersArr[0] = '짱아';
console.log(membersArr); // [ '짱아', '훈이', '수지' ]
console.log(typeof membersArr); // object type -> 배열도 객체타입이다

3) Function : 함수도 객체형이다..!

0개의 댓글