오브젝트(object)
사람 = 특징(이름, 성별, 키..), 동작(말하기, 걷기)
속성들과 액션으로 이뤄진 집합체 = 객체
객체 생성하기
{ }를 통해 객체를 생성할 수 있다.
key: value 값으로 이루어져 있다.
메서드(method) - 속성 중에 값이 함수인 것을 메서드라고 부른다.
this
객체가 메서드를 실행했을 때, 메서드를 실행한 주체 객체를 의미한다.
전역 영역에서 this를 호출하면 최상위 객체(window 혹은 global)가 출력된다.
생성자(constructor)
비슷한 속성과 함수를 가진 객체들을 찍어낼 수 있는 틀
구조는 같되 각각의 속성의 값은 개별적으로 다 다른 객체들을 만들 수 있다.
1) function, 생성자 함수를 이용해서 만들기
function Person(nickName, age) {
this.nickName = nickName;
this.age = age;
this.introduce = function () {
console.log(`안녕하세요. 저는 ${this.nickName}입니다.`);
};
}
const yuJin = new Person("안유진", 2003);
console.log(yuJin.introduce());
2) class를 이용한 생성자 만들기
class IdolModel {
name;
year;
constructor(name, year) {
this.name = name;
this.year = year;
}
introduce() {
return `안녕하세요. 저는 ${this.name}입니다.`;
}
}
const yuJin2 = new IdolModel("안유진", 2003);
console.log(yuJin2.introduce());
객체 만들기
const 변수명 = new 생성자 함수 이름( );
new
함수가 생성자로서 호출이 되게하고 싶으면 new 키워드를 붙이면 된다.
인스턴스
생성자 함수로 생성해낸 각각의 개별 객체
__proto__
모든 객체에 존재하는 프로퍼티
class 강의에서 배울 때 상속에서 부모 클래스에 해당되는 값이다.
prototype
생성자.prototype.함수명 = function( ){ };
생성자.prototype.속성 = 속성값;
개별 인스턴스들이 공유한다.
각 인스턴스 객체들마다 다른 값으로 개별적으로 세팅이 되야하면 this로 생성하고 공유하는 것들은 프로토타입에 정의해주면 된다
'자바스크립트(javascript) > 응용' 카테고리의 다른 글
[자바스크립트 프로젝트] 일정 관리 웹페이지 (0) | 2024.08.02 |
---|---|
[javascript] 응용 기록 6 (0) | 2023.08.25 |
[javascript] 응용 기록 5 (0) | 2023.08.25 |
[javascript] 응용 기록 4 (0) | 2023.08.24 |
[javascript] 응용 기록 3 (0) | 2023.08.24 |