[JavaScript] this란?

sona·2022년 7월 31일

👻 JavaScript

목록 보기
2/5

this란?
자기 자신을 표현해줌

자기자신 = 대명사이다.
한국어 : 나
영어 : me
프로그래밍 : this

  • 객체 지향을 만든 사람들은 어떤 method 즉 함수가 있으면 그 method가 자신이 속해있는 객체를 가르키는 특수한 키워드를 만들기로 약속함. 마치 인간의 나는, 저는 같은 역할. 그게 this!

this를 사용 전

예시1

var ggu = {
  name : 'ggu',
  first : 10,
  second : 20,
  sum : function(f,s){
	  return f+s;
	}
}

//kim의 객체는 내부적으로 first, second를 가지고 있지만
//sum을 호출하면서 한번더 인자로 값을 또 한번 호출해줘야함 (불편...)
console.log(ggu.sum(ggu.first, ggu.second))

예시2

var ggu = {
  name : 'ggu',
  first : 10,
  second : 20,
  sum : function(){
	  return kim.first+kim,second;
	}
}

//이렇게 바꿔도 동작함
//하지만 객체 이름 var=ggu와 아래 console을 ggu가 아닌 zzu로 바꾼다면 동작하지 않음.
//return 값까지 바꿔줘야함. (불편...)
console.log("ggu.sum(ggu.first, ggu.second)", ggu sum());

this 사용 후

var ggu = {
    name:'ggu',
    first:10,
    second:20,
    sum:function(){
    	//return 부분을 this로만 바꾸면 됨
        return this.first+this.second;
    }
}

//console.log("ggu.sum(ggu.first, ggu.second)", ggu.sum(ggu.first, ggu.second));
console.log("ggu.sum(ggu.first, ggu.second)", ggu.sum());
 

0개의 댓글