JS - 자료형

바쁘다 바빠 현대사회·2020년 12월 20일
0
post-thumbnail

Javascript 자료형

자바스크립트에는 두가지의 자료형이 있다.
원시형 (Primitive Type) 과 참조형 (Reference Type)

원시형

  • String
  • Number
  • Symbol
  • null
  • undefined
  • boolean

참조형

  • Object
  • Array
  • Function ...

원시형의 특징

  • 원시형은 불변성을 가진다. 그 말인 즉슨, 그 값은 절대 바뀌지 않는다는것이다.
    그렇다면 변수에 원시형이 할당되었다면 재할당이 불가능한가? 그건 아니다. 재할당은 가능하다. 하지만 원시타입의 값이 바뀌는것이 아닌, 새로운 원시타입이 그 자리를 대체하는 것이다.

함수

함수는 1급객체 이다.
1급 객체로서 존재하기 위해서는 3가지의 조건을 충족 해야한다.
1. 다른 함수나 객체의 인자로 넘겨질 수 있다.
2. 리턴 값으로 넘겨질 수 있다.
3. 변수나 데이터에 할당 될 수 있다.

함수는 이 세가지를 모두 충족하므로 1급객체라 할 수 있다.

생성자 함수

자바스크립트에서 생성자 함수란 리턴 값으로 생성하는 함수를 객체 그 자체로서 반환하는 함수입니다.
사실 new 키워드 없이도 당연히 생성은 할 수야 있겠지만,
그럴 경우에는 일반 함수 호출로 실행 되어 함수 내부의 this 가 현재 컨텍스트, 즉 window를 가리키기 때문에 window객체의 프로퍼티를 초기화 하면서, 원하는 값을 얻기 힘들거나 예상치 못한 버그가 생길 수 있다.

Wapper Object

  • wapper object란, 생성자 함수를 사용해 값을 리턴 할 경우,
    그 값을 감싸주는 객체를 말한다. 예를 들어보자면
cosnt new String("dog")



{
	0: "d",
	1: "o",
	2: "g",
	length : 3
}

이렇게 값을 '감싸주는 객체' 인 wapper object 가 생긴다.

profile
알쏭달쏭 디지털 세상

0개의 댓글