1 minute read

  • 객체는 몇 가지 특수한 기능을 가진 연관 배열

  • 오직 하나의 데이터를 담을 수 있는 원시형과 달리 다양한 데이터 담기 가능

  • 객체 생성법

    • 객체 생성자 문법 new Object()

    • 객체 리터럴 문법 {}

  • 객체는 프로퍼티(키-값 쌍) 저장

  • 상수 객체 (const 로 선언된 객체) 는 전체적으로 수정할 때 제외(오류 발생)하고 수정 가능

  • 프로퍼티 조건

    • 프로퍼티 키는 문자열이나 심볼만 가능

    • 값은 자료형에 제한 없음

  • 프로퍼티 접근 방법

    • 점 표기법 : obj.property 으로 접근하며 일반적인 접근법. 키가 ‘유효한 변수 식별자’(공백이나 특수문자가 없는 변수 식별자)일때만 사용 가능

    • 대괄호 표기법 : obj[“property”] 으로 접근하며 키가 ‘유효한 변수 식별자’가 아닐때 사용

  • 계산된 프로퍼티란 객체 만들 때 객체 리터럴 안의 프로퍼티 키가 대괄호로 둘러싸여 있는 경우이며 프로퍼티 이름을 변수에 가져올 수 있음

  • 단축 프로퍼티란 객체에 키-값 쌍이 아닌 변수만 있는 프로퍼티를 말하며 해당 프로퍼티의 키-값은 변수명-변수값

  • 프로퍼티 이름 제약사항

    • 예약어 지양

    • 문자형, 심볼형 속하지 않은 자료형 (문자열로 자동 형 변환)

    • proto (프로퍼티의 이름이 아닌 객체의 프로토타입이 설정됨)

  • 객체의 추가 연산자

    • delete obj.prop 으로 프로퍼티 삭제

    • “key” in obj 로 해당 key 가 객체 내에 있는지 확인

    • for (let key in obj) 로 프로퍼티 나열(순회)

  • 객체 종류

    • 순수 객체 : 응용된 객체가 아닌 순수 만든 객체

    • 그 외 : Array, Date, Error 등의 기타 등등

  • 객체마다 고유한 기능 제공

  • Array, Date 는 독립적인 자료형이 아닌 ‘객체’형에 속함

  • 객체 정렬 방식

    • 정수 프로퍼티(변형 없이 정수 <-> 문자열로 변형 자유로운 프로퍼티) : 자동 정렬

    • 그 외 : 객체에 추가한 순서대로 정렬

Categories: ,

Updated: