안녕하세요😊 코드카인 여러분!
오늘은 JavaScript 객체 생성과 활용에 대해 알아보려고 해요. 마치 레고 블록을 조립하듯, 객체를 만들고 활용하면 코드를 훨씬 더 효율적이고 재미있게 작성할 수 있어요. 😊 자, 그럼 시작해볼까요?
🏗️ 객체란 무엇인가요?
객체(Object)는 속성과 행동을 한데 모은 구조입니다. 쉽게 말해, 현실 세계의 사물을 코드로 표현한 것이에요. 예를 들어, 자동차는 "브랜드", "색상" 같은 속성과 "달리다", "멈추다" 같은 행동을 가지고 있죠.
JavaScript에서는 이런 객체를 다양한 방식으로 생성할 수 있어요. 😊
🎯 객체 생성 방법
1. 객체 리터럴
가장 간단한 방법으로, {}
를 사용해 객체를 바로 만들 수 있어요.
const car = {
brand: "Tesla",
color: "red",
drive: function () {
console.log("부릉부릉!");
}
};
// 사용 예시
console.log(car.brand); // Tesla
car.drive(); // 부릉부릉!
2. Object
생성자
JavaScript 내장 생성자인 Object
를 이용해 객체를 만들 수도 있어요.
const person = new Object();
person.name = "John";
person.age = 30;
person.greet = function () {
console.log(`안녕하세요, 저는 ${this.name}입니다!`);
};
// 사용 예시
person.greet(); // 안녕하세요, 저는 John입니다!
3. 생성자 함수
재사용 가능한 객체를 만들고 싶을 때 생성자 함수를 사용하면 좋아요.
function Animal(type, sound) {
this.type = type;
this.sound = sound;
this.makeSound = function () {
console.log(`${this.type}가 "${this.sound}"라고 소리칩니다.`);
};
}
// 객체 생성
const dog = new Animal("강아지", "멍멍");
const cat = new Animal("고양이", "야옹");
// 사용 예시
dog.makeSound(); // 강아지가 "멍멍"라고 소리칩니다.
cat.makeSound(); // 고양이가 "야옹"라고 소리칩니다.
4. 클래스
클래스를 사용하면 객체지향 프로그래밍(OOP) 스타일로 코드를 작성할 수 있어요.
class Student {
constructor(name, grade) {
this.name = name;
this.grade = grade;
}
introduce() {
console.log(`안녕하세요! 저는 ${this.name}이고, ${this.grade}학년이에요.`);
}
}
// 객체 생성
const student1 = new Student("민지", 3);
student1.introduce(); // 안녕하세요! 저는 민지고, 3학년이에요.
🔍 객체 활용하기
1. 속성 추가 및 삭제
객체의 속성은 동적으로 추가하거나 삭제할 수 있어요.
const book = {
title: "자바스크립트 배우기",
author: "코드카인"
};
// 속성 추가
book.price = 15000;
console.log(book.price); // 15000
// 속성 삭제
delete book.author;
console.log(book.author); // undefined
2. 객체 순회
객체의 속성을 확인하거나 작업할 때는 for...in
반복문을 사용할 수 있어요.
const user = {
id: 101,
name: "Alice",
role: "Admin"
};
for (const key in user) {
console.log(`${key}: ${user[key]}`);
}
// 출력
// id: 101
// name: Alice
// role: Admin
3. 객체 복사
객체를 복사할 때는 Object.assign
이나 스프레드 연산자(...)를 사용해요.
const original = { a: 1, b: 2 };
const copy1 = Object.assign({}, original);
const copy2 = { ...original };
console.log(copy1); // { a: 1, b: 2 }
console.log(copy2); // { a: 1, b: 2 }
🎉 객체 활용 실전 예제
🕵️♀️ 문제: 사용자의 정보와 역할을 관리하는 시스템
class User {
constructor(name, role) {
this.name = name;
this.role = role;
}
displayInfo() {
console.log(`사용자: ${this.name}, 역할: ${this.role}`);
}
}
// 사용자 생성
const admin = new User("코드카인", "관리자");
const editor = new User("하영", "편집자");
// 역할 확인
admin.displayInfo(); // 사용자: 코드카인, 역할: 관리자
editor.displayInfo(); // 사용자: 하영, 역할: 편집자
😊 마무리하며..
JavaScript 객체는 현실 세계의 개념을 코드로 쉽게 표현할 수 있는 강력한 도구입니다. 리터럴, 생성자 함수, 클래스 등 다양한 방법으로 객체를 생성하고 활용하며, 여러분의 코드에 창의력을 더해보세요! 🚀
초보 개발자분들께서도 도전을 두려워하지 말고, 다양한 방식으로 객체를 만들어보고 실험해보세요. 여러분의 코드가 점점 더 강력해질 거예요! 😊
'JavaScript > JavaScript 객체와 클래스' 카테고리의 다른 글
JavaScript this와 super, 5분 만에 차이 이해하기 - 코드카인 티스토리 (0) | 2025.01.23 |
---|---|
JavaScript 클래스 선언과 생성자, 쉽고 빠르게 배우기! - 코드카인 티스토리 (0) | 2025.01.23 |
메서드와 상속의 모든 것! JavaScript로 객체 지향 프로그래밍 배우기 - 코드카인 티스토리 (0) | 2025.01.23 |
깊은 복사 vs 얕은 복사, JavaScript 객체 복사의 모든 것 - 코드카인 티스토리 (0) | 2025.01.23 |