함수안에서 사용이된 인자들을
property로 사용하기 위해서는
this를 사용해서 연결해주는 작업이 필요하다.
this를 이용해 단독적인 인스턴스를 만들려고하자.
function Song(singer,title,release){
this.singer=singer;
this.title=title;
this.release=release;
console.log(this);
}
const song1=Song();
문제상황발생!!
//우리는
단독적인 인스턴스를 만들고싶은 것인데
여기서 this가 윈도우를 가리키고
윈도우 안에 singer가 들어간다.
그러면 어떻게 단독적 인스턴스를 만드는가?
답은 new 이다.
new라는 키워드를 사용했을 때
this가 어떤값을 보여주는지 확인해보면
function Song(singer,title,release){
this.singer=singer;
this.title=title;
this.release=release;
console.log(this);
}
const song1= new Song();
함수에 들어있는 인스턴스를
this가 가리키게 된다.
이 new키워드가 없다면 위처럼 윈도우를 가리키게된다.
따라서 객체지향에서 함수를 사용하려면
반드시 new키워드를 써서 인스턴스화를해주어야한다.
'웹 실습' 카테고리의 다른 글
new Date사용한 내장객체화와 그를 활용한 출력 getDay(),getDate() (0) | 2022.04.06 |
---|---|
인스턴스화이용한 출력 (0) | 2022.04.06 |
reduce함수 (0) | 2022.04.05 |
기존의 배열을 ``(백틱)을 이용해 새로운 형태의 배열로 출력시키기 (0) | 2022.04.05 |
배열.forEach(function( ){} (0) | 2022.04.05 |