모던 자바스크립트 Deep Dive 6장-데이터 타입

HustleKang·2022년 3월 16일

데이터 타입

  • 값의 종류
  • 원시 타입 : 숫자, 문자열, 불리언, null, undefined, 심벌
  • 객체 타입 : 객체, 배열, 함수

숫자 타입

  • 배정밀도 64비트 부동소수점 형식
  • 모든 수는 실수로 처리
  • 특별한 값 : Infinity,-Infinity, NaN

문자열 타입

  • 변경 불가능한 값
  • 작은 따옴표, 큰 따옴표, 백틱

템플릿 리터럴

  • 런타임에 일반 문자열로 변환
  • 줄바꿈과 모든 공백이 적용됨 ( ',"는 줄바꿈 X)
  • 표현식 삽입 가능
  • 표현식의 평가 결과가 문자열이 아니더라도 문자열로 타입이 강제 변환되어 삽입
var 성 = 'Kang';
var 이름 = 'Hustle';

console.log(`I am ${성} ${이름}`);

불리언 타입

  • true, false

undefined 타입

  • undefined 타입의 값은 undefined 뿐

null 타입

  • null 타입의 값은 null뿐
  • 변수에 값이 없다는 것을 의도적으로 명시할 때 사용
  • typeof 찍으면 object나옴
  • 함수가 유요한 값을 반환할 수 없을 때 null 반환

심벌 타입

  • 변경 불가능한 원시 타입 값
  • 중복이 없는 유일무이한 값
  • 객체에 키를 만들 때 사용
  • Symbol 함수를 호출하여 생성
var name = Symbol('name');
var person1 = {};
person1[name] = 'husltekang';

객체 타입

  • 자바스크립트는 객체 기반 언어, 자바스크립트를 이루고 있는 거의 모든 것이 객체

데이터 타입의 필요성

  • 값을 저장할 때 확보해야 하는 메모리 공간의 크기를 결정하기 위해
  • 값을 참조할 때 한 번에 읽어 들여야 하는 메모리 공간의 크기를 결정하기 위해
  • 메모리에서 읽어 들인 2진수를 어떻게 해석할지 결정하기 위해

동적 타이핑

  • 자바스크립트의 변수는 할당된 값의 데이터 타입에 의해 타입이 결정됨
  • 재할당으로 변수의 타입은 언제는 변할 수 있다

이웅모, 『모던 자바스크립트 Deep Dive』, 위키북스(2021)

profile
grindin'

0개의 댓글