코어 자바스크립트 1강 데이터 타입 질문 목록

·

1 min read

기본형 데이터 타입 종류를 말하시오.

  • boolean
  • number

  • string

  • symbol

  • null

  • undefined

기본형 데이터와 참조형 데이터를 비교해서, 할당된 값 변경시 변수의 주소값에 대해 설명하시오. (메모리 개념 포함)

  • 기본형 데이터는 불변값을 가지기 때문에 다른 값이 할당되면, 메모리 빈 공간에 새로운 값이 할당되고, 변수에 새로운 주소값이 적용된다.

  • 참조형 데이터는 새로 객체를 복사하지 않으면 동일한 메모리 주소값에서 프로퍼티의 값의 주소를 바꾼다.

불변 객체가 왜 중요한가요? 어느 경우에 사용해야 할까요?

  • 원본 객체가 유지되어야 할 때는 불변 객체가 보장되어야 한다.

  • 예시 : 이전 값과 현재 값을 비교해야 하는 경우

얇은 복사와 깊은 복사의 정의와 깊은 복사가 왜 필요한지 설명하시오.

  • 얇은 복사 : 바로 아래 단계 프로퍼티의 주소값만 새롭게 복사하는 경우

  • 깊은 복사 : 모든 프로퍼티의 주소값을 새롭게 복사하는 경우

  • 얇은 복사시 바로 아래 단계는 완전히 새로운 데이터로 만들어주는 반면 중첩된 프로퍼티는 기존 데이터를 그대로 참조하기 때문에 값 변경시 원본도 변경된다.

자바스크립트가 undefined를 리턴하는 경우 3가지를 설명하시오.

  • 값이 할당되지 않은 변수에 접근할 때

  • 아무것도 return하지 않을 때

  • 존재하지 않는 프로퍼티를 참조할 때

typeof null의 타입은 무엇일까요?

  • object