개발

js 객체

explosion149 2024. 11. 5.

 

 

데이터와 기능을 포함하는 복합 데이터 타입입니다. 
객체는 키-값 쌍으로 구성되어 있으며, 
다양한 데이터를 구조적으로 저장하고 관리하는 데 유용합니다.

 

 

 

객체의 기본 개념

 

객체는 여러 프로퍼티를 가질 수 있으며, 각 프로퍼티는 이름(키)과 값으로 구성됩니다.
객체는 다양한 데이터 타입을 포함할 수 있으며, 다른 객체를 포함할 수도 있습니다.

 

 

객체 생성 방법

 

객체 리터럴

const person = {
    name: "홍길동",
    age: 30,
    isStudent: false
};

 

가장 간단한 방법으로, 중괄호 {}를 사용하여 객체를 생성합니다.

 

new Object() 구문

 

const person = new Object();
person.name = "홍길동";
person.age = 30;
person.isStudent = false;

 

Object 생성자를 사용하여 객체를 만들 수 있습니다.

 

 

클래스

class Person {
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }
}

const person = new Person("홍길동", 30);

 

ES6에서 도입된 클래스 문법을 사용하여 객체를 생성할 수 있습니다.

 

 

프로퍼티 접근

 

 점 표기법 (Dot Notation)

 

console.log(person.name); // "홍길동" 출력
console.log(person.age);  // 30 출력

 

 

대괄호 표기법 (Bracket Notation)

 

console.log(person["name"]); // "홍길동" 출력
console.log(person["age"]);  // 30 출력

 

대괄호를 사용하여 문자열로 프로퍼티 이름을 지정할 수 있습니다. 

주로 동적으로 프로퍼티에 접근할 때 사용됩니다.

 

 

 메서드

const person = {
    name: "홍길동",
    age: 30,
    greet: function() {
        console.log(`안녕하세요, 저는 ${this.name}입니다.`);
    }
};

person.greet(); // "안녕하세요, 저는 홍길동입니다." 출력

 

객체는 함수도 프로퍼티로 가질 수 있으며, 이를 메서드라고 합니다.

 

 

 

객체의 프로퍼티 추가 및 삭제

 

 프로퍼티 추가

 

person.email = "hong@example.com";
console.log(person.email); // "hong@example.com" 출력

 

 

프로퍼티 삭제

delete person.age;
console.log(person.age); // undefined 출력

 

 

객체 복사

객체는 참조 타입이므로, 단순히 변수에 다른 객체를 할당하면 같은 객체를 가리키게 됩니다.

 

 

 

Object.assign()

 

const newPerson = Object.assign({}, person);

 

 

 전개 연산자 (Spread Operator)

 

const newPerson = { ...person };

 

ES6에서 도입된 전개 연산자를 사용하여 객체를 복사할 수 있습니다.

 

 

객체의 메서드 및 this

 

const person = {
    name: "홍길동",
    greet() {
        console.log(`안녕하세요, 저는 ${this.name}입니다.`);
    }
};

person.greet(); // "안녕하세요, 저는 홍길동입니다." 출력

 

this 키워드: 메서드 내에서 this는 해당 메서드를 호출한 객체를 참조합니다.

 

 

 

 

객체와 JSON

JSON(JavaScript Object Notation)은 객체를 표현하는 형식 중 하나입니다. 

JSON은 문자열로 표현되며, 데이터 전송에 주로 사용됩니다.

 

 

JSON 문자열을 객체로 변환

const jsonString = '{"name": "홍길동", "age": 30}';
const jsonObject = JSON.parse(jsonString);

 

 

객체를 JSON 문자열로 변환

const jsonString = JSON.stringify(person);

 

 

 

'개발' 카테고리의 다른 글

js for문  (1) 2024.11.05
js 배열  (0) 2024.11.05
js 조건문  (0) 2024.11.05
js 스코프 및 화살표 함수  (0) 2024.11.05
js 함수  (0) 2024.11.05

댓글

💲 추천 글