데이터 노트

[JavaScript] 속성, 메소드, 생성자, 프로토타입 본문

Web

[JavaScript] 속성, 메소드, 생성자, 프로토타입

돌돌찐 2022. 6. 13. 21:28

기본적인 용어에 대한 이해도가 낮은 듯하여, 각각의 정의를 다시금 정리하게 되었다.


속성(프로퍼티)

- property
- 객체 내부에 있는 값이며, 객체는 프로퍼티로 구성됨
cf) 배열 내부에 있는 값은 요소
- 속성은 모든 자료형을 가질 수 있음


메소드

- method
- 객체의 속성 중, '함수 자료형' 속성일 경우 메소드라고 함


생성자

- constructor
- 객체를 생성하기 위한 함수를 생성자라고 함
- 생성자를 사용할 경우, 생성자 내에서 객체의 프로퍼티를 정의하고 이를 사용할 경우 객체에 대한 초기화가 이루어짐
-> 코드에 대한 재사용성이 대폭 높아짐.
- 예시

function Animal(animal){
	this.animal = animal;
    this.say = function(){
    return "I like" + this.animal;
    }
}

// new + 함수가 오면 객체를 생성하며, 이 때 Animal 함수는 생성자가 된다.
var a1 = new Animal('dog');
a1.say();
//I like dog.

var a2 = new Animal('cat');
a2.say();
//I like cat


프로토타입

- prototype
- 객체의 원형
- 프로토타입 내에는 어떠한 객체가 저장되어 있고, 저장된 속성들은 생성자를 통해 객체가 생성될 때 그 객체에 연결됨 (prototype chain)


각각의 기본개념의 연계성을 제대로 파악하고 사용하도록 하자.

기본 개념에 익숙해질 때까지는 코드를 작성하면서 각각의 요소들의 용어와 활용에 대해 생각하기.

 

 


참고자료

MDN

 

※잘못된 정보는 댓글로 알려주시면 감사하겠습니다 :)