inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

프론트엔드 날개달기: Vue, React 배우기 전에 꼭 알아야하는 지식

this란 무엇인가? (21분 28초)

화살표 함수의 this 질문드립니다!!

549

태현

작성한 질문수 1

1

화살표 함수의 this는 상위의 스코프를 가리킨다. 이런 개념이잖아요??

그래서 obj안에 obj를 만들어 거기에서 화살표함수를 통해 함수를 만들고 호출하였습니다. 상위 스코프이기에 test가 출력이 될 거라고 생각했는데 window가 출력이 되더라구요.. 왜일까요?ㅠㅠ

const test = {
  name : 'test1',
  foo : {
    bar : ()=> {
      console.log(this)
    }
  }
}

test.foo.bar()

화살표함수 웹팩 this

답변 1

0

짐코딩

안녕하세요 태현님~!

우선 화살표 함수의 this는 상위 스코프의 this를 승계 받습니다.

설명보다 코드로 함께 설명드리면 아래와 같습니다.

const test = {
  name : 'test1',
  foo : {
    bar : ()=> {
      // 상위 스코프(전역)의 this인 window
      console.log(this)
    },
  },
  hello: function() {
    /**
     * 자바스크립트에서의 함수는 선언되는 동시에lexical)
     * 자신만의 Scope(범위)를 가집니다.
     */
    // 해당 스코프(지역)의 this는 test
    console.log(this)
    const foo = {
      bar: () => {
        // 상위 스코프(지역)의 this인 test
        console.log(this)
      }
    }
    foo.bar()
  }
}
test.foo.bar()
test.hello()

자바스크립트 스코프에 대한 이해를 조금 더 명확히 하시면 더 이해가 쉬울 것 같아요 🙂

webpack 관련 질문

0

22

1

Lottball.vue에서 궁금한점이 있어 질문드립니다.

0

48

0

수강후기

0

45

1

npm run build 시 강사님같은 app.js가 생성되지 않음

0

82

2

기본 셋팅과 관련하여

0

91

1

초기 셋팅 back과 front만 남겨두고 다 지운 후 진행 방법

0

96

2

캡쳐링을 막아야 하는 경우는 어떤 경우가 있을까요?

0

89

1

focus 시에만 화면 업데이트 되는 이유 + 해결방법

0

148

2

useEffect 개수 관리

0

109

2

함수 정의 패턴

0

77

1

npm run dev 에러

0

152

3

npx webpack 후 에러

0

178

2

'void' 형식 식의 truthiness를 테스트할 수 없습니다.ts(1345)

0

142

2

에러 해결 공유드립니다

1

224

2

webpack 4 버전과 호환되는 플러그인 버전 공유드립니다

1

233

2

초기세팅중 packge.json 에러떠요

0

154

2

CORS - Access-Control-Allow-Origin 누락 문제

0

426

3

eslint

0

381

3

[이벤트 전파, 버블링&캡쳐링] style 관련 문의

0

299

1

안녕하세요 선생님 혹시 강의 내용을 블로그에 정리해도 될까요?

0

589

1

DOM(document object model)과 BOM(broswer object model)의 상관 관계

0

622

1

교안이 따로 공유해주시면..

1

999

1

강의 내용을 블로그에 정리해도 될까요?

0

353

1

강의동영상중에 정리된 내용을 볼 수 있는 인터넷 주소가 따로 있나요 ?

0

410

1