프로그래밍

[JavaScript] 자료형(Data Types) 본문

Web/JavaScript

[JavaScript] 자료형(Data Types)

시케 2023. 11. 29. 16:36
728x90
반응형

2023.11.29.수

자료형(Data Types)

자바스크립트에는 6개의 Primitive Type(원시타입)과 1개의 Object 타입이 있다

Primitive Type은 가장 단위의 기본 데이터 타입이다

자바스크립트는 동적 타입 언어로 변수의 타입을 명시적으로 표현하지 않고
선언 후 할당된 값으로 타입을 '추론'한다
이 점을 염두해두어야 한다

Primitive Type(원시타입)

간단하고 기본적인 데이터를 나타낸다

원시 데이터 타입들은 원시 값으로 간주되며, 객체가 아니라는 특징이 있다

원시 타입은 값 자체를 복사하여 전달하며, 변수 간에 독립적인 값을 가지고 있다

> call by value

∴ 원시 타입은 불변(immutable)하기 때문에 한 번 생성된 값은 변경할 수 없으며 새로운 값을 할당해야 한다

 

Number Type(숫자)

// Number 타입
const age = 32;
const tempature = -10;
const pi = 3.14;

const infinity = Infinity;
const nInfinity = -Infinity;

 

String Type(문자열)

// String 타입
const codeFactory = '"코"드팩토리';
const ive = "'아이브' 안유진";

 

Template Literal

/**
 * Template Literal
 * 
 * Escaping Character
 * 1) newline -> \n
 * 2) tab -> \t
 * 3) 백슬래시를 스트링으로 표현하고싶다면 두번 입력하면된다.
 */
 
const iveYuJin = '아이브\n안유진'
const iveWonYoung = '아이브\t장원영';
const backSlash = '아이브\\코드팩토리';
const smallQutoation = '아이브\'코드팩토리';

console.log(iveYuJin);
console.log(iveWonYoung);
console.log(backSlash);
console.log(smallQutoation);

// 보이는대로 입력할 수 있게 함
const iveWonYoung2 = `아이브i '" / / / / / /
장원영`;

console.log(iveWonYoung2);
console.log(typeof iveWonYoung2);

const groupName = '아이브';
console.log(groupName + ' 안유진');
console.log(`${groupName} 안유진`);

 

Boolean Type

// Boolean 타입
const isTrue = true;
const isFalse = false;

 

undefined

사용자가 직접 값을 초기화하지 않았을때 지정되는 값이다
직접 undefined로 값을 초기화하는건 지양해야한다

// undefined
let noInit;

console.log(noInit);
console.log(typeof noInit);

 

null Type

undefined와 마찬가지로 값이 없다는 뜻이나
JS에서는 개발자가 명시적으로 없는 값으로 초기화할때 사용된다

// null 타입
let init = null;
console.log(init);
console.log(typeof init); // 현재 null값의 타입이 object 라고 나옴

 

Symbol Type

유일무이한 값을 생성할때 사용한다.
다른 프리미티브 값들과 다르게 Symbol 함수를 호출해서 사용한다

비교적 최근에 생긴 자료형이다

// Symbol 타입
const test1 = '1';
const test2 = '1';

console.log(test1 === test2);

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

console.log(symbol1 === symbol2); // 타입까지 같은지 비교

 

Object Type

다른 언어에서는 Map, dictionary 등으로도 불린다
키:벨류의 쌍으로 이루어져있으며 데이터를 구조화하는데 쓰인다

// Object 타입
// key:value

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

console.log(dictionary);
console.log(dictionary['red']);
console.log(dictionary['orange']);
console.log(dictionary['yellow']);

console.log(typeof dictionary);

/**
 * Array 타입
 * 
 * 값을 리스트로 나열 할 수 있는 타입이다.
 */
const iveMembersArray = [
    '안유진',
    '가을',
    '레이',
    '장원영',
    '리즈',
    '이서',
];
console.log(iveMembersArray);

/**
 * index
 * 
 * 0부터 시작한다.
 * 1씩 올라갑니다.
 */
console.log(iveMembersArray[0]);
console.log(iveMembersArray[5]);

iveMembersArray[0] = '코드팩토리';
console.log(iveMembersArray);
console.log(typeof iveMembersArray);

 

728x90
반응형

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

[JavaScript] 에러 처리  (0) 2023.11.30
[JavaScript] 제어문  (0) 2023.11.30
[JavaScript] 연산자  (0) 2023.11.30
[JavaScript] 변수(선언 / 할당 / 변수명)  (0) 2023.11.28
[JavaScript] 로그 및 주석  (0) 2023.11.28
Comments