본문으로 바로가기

자바스크립트에서 this는 무엇일까.

  • 기본적으로 일반적인 일반 함수 안에서 쓰면 window object를 가지고온다.
<script>
    console.log(this);

    function 함수(){
        console.log(this);
    }
    함수();
</script>

  • 오브젝트 함수안에서 this를 사용하면?

그 함수를 가지고 있는 오브젝트를 가지고 온다.

오브젝트 안의 오브젝트안에 함수를 만들게 된다면 오브젝트 안의 내용을 가지고온다.

<script>
    console.log(this);

    var 오브젝트 = {
        data: "data",
        함수 : function(){
            console.log(this);
        }
    }

    오브젝트.함수();
</script>

 

신 문법 Arrow Function 특징

  • 기존 function() 의 문법을 () => {} 로 이용할 수 있는 문법이 나왔습니다.
  • 신 문법의 함수의 this는 부모의 내용을 가지고 온다.
  • 내부의 this 값을 변화 시키지 않아서 외부의 this 값 그대로 재사용가능하다.
var 함수 = () => {



}
파라미터가 1개면 () 소괄호를 생략가능
함수의 코드 한줄이면 중괄호 생략가능