[JAVASCRIPT LEVEL1] 4. 원시 타입과 객체

유지원·2021년 5월 17일
1

JAVASCRIPT LEVEL1

목록 보기
4/19

이 포스팅은 '러닝 자바스크립트'를 보며 공부한 내용입니다.

✔️ 자바스크립트의 값 : 원시 값primitive 또는 객체object.


원시 타입

  • 숫자
  • 문자열
  • 불리언
  • null
  • undefined
  • 심볼Symbol

✔️ 문자열과 숫자 같은 원시 타입 ➜ 불변immutable

  • 숫자 5는 항상 숫자 5.
  • 문자열 "alpha"는 항상 문자열 "alpha".
  • "alpha" + "omega" 처럼 문자열을 병합 ➜ ✔️ 다른 문자열.
    • 같은 문자열을 수정했을 뿐이라는 생각 X.
    • 5와 6이 서로 다른 숫자인 것과 마찬가지로 alpha와 alphaomega는 서로 다른 문자열.

불변성 ➜ 변수의 값이 바뀔 수 없다는 뜻은 아닙니다.

let str = "hello";
str = "world";

str은 먼저 불변인 값 "hello"로 초기화됐고, 다시 새로운 불변값 "world"를 할당받았습니다.
"hello"와 "world"가 서로 다른 문자열. ➜ ✔️ 바뀐 것은 str이 저장하는 값 뿐.


객체

여섯 가지 원시 타입 외에 객체가 있습니다.

✔️ 원시 값과 달리 객체는 여러 가지 형태와 값을 가질 수 있습니다.
✔️ 객체의 유연한 성질 때문에 커스텀 데이터 타입을 만들 때 객체를 많이 사용.
✔️ 자바스크립트에는 몇 가지 내장된 객체 타입이 있습니다.

  • Array
  • Date
  • RegExp
  • Map과 WeakMap
  • Set과 WeakSet

✔️ 원시 타입에 대응하는 객체 타입

  • 숫자(원시 타입) ➜ Number(객체)
  • 문자열(원시 타입) ➜ String(객체)
  • 불리언(원시 타입) ➜ Boolean(객체)

대응하는 객체에 실제 값이 저장되지는 않습니다.
이들은 대응하는 원시 값에 기능을 제공하는 역할입니다.

profile
👋 https://github.com/ujw0712

0개의 댓글