객체

·2025년 7월 28일

JS

목록 보기
6/7
post-thumbnail

객체란?

  • 객체(Object): 나(주체)가 아닌, 다른 실체
  • 주체(Subject): 중심이 되는 기준점 (예: 개발자, 강사 등)

생활 속 객체 개념

  • 모든 대상은 객체가 될 수 있음
  • 물리적 개념: 컴퓨터, 안경, 의자
  • 논리적 개념: 강의, 수업, 사용자
  • 개발자 입장에서 → 컴퓨터 속에서 객체를 정의(데이터+기능)하여 구성

1. 객체 종류

유형설명
클래스 기반 객체class 키워드로 생성, 자바에서 필수
클래스 없이 생성된 객체{} 중괄호로 직접 생성 (JS에서 자주 사용됨)

2. 객체 vs 배열 차이점

구분배열 [ ]객체 { }
구조순서 있는 값들속성(key)-값 쌍
호출 방식인덱스로 접근속성명으로 접근
사용 목적동일한 성질의 값 나열서로 다른 정보 묶기
[10, 'hello']{a: 10, b: 'hello'}
// 변수에는 항상 '하나의 자료'만 저장
const var1 = [10, 'hello'];     // 배열 자료 1개를 저장
const var2 = { a: 10, b: 'hi' }; // 객체 자료 1개를 저장

4. 객체 사용법

1) 객체 선언

const person = {
  name: "유재석",
  age: 30,
  job: "개그맨"
};

2) 객체 호출

console.log(person);         // 전체 객체 출력
console.log(person.name);    // '유재석'
console.log(person["job"]); // '개그맨'

3) 관련 함수

함수설명
Object.keys(obj)속성명(key) 배열 반환
Object.values(obj)속성값(value) 배열 반환
Object.entries(obj)[속성명, 속성값] 배열 반환

4) 객체 속성 다루기

let car = { brand: "Hyundai" };

// 속성 추가
car.model = "Sonata";

// 속성 수정
car.brand = "Kia";

// 속성 삭제
delete car.model;

// 속성 존재 확인
console.log("brand" in car); // true

정리 TIP

  • 서로 다른 의미의 값들을 묶을 때 → 객체
  • 서로 같은 의미의 값들을 나열할 때 → 배열
  • 객체와 배열은 서로 중첩해 사용할 수 있다
// 객체 안에 배열
const student = {
  name: "지민",
  scores: [85, 90, 78]
};

// 배열 안에 객체
const classList = [
  { name: "민수", age: 18 },
  { name: "유진", age: 17 }
];

0개의 댓글