inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

코어 자바스크립트

화살표함수 this 바인딩 관련 질문 드립니다.

해결된 질문

266

일론 머스크

작성한 질문수 2

0

안녕하세요, 선생님.

this 강의를 듣고 아래와 같이 this 바인딩 코드를 작성하였는데, 함수를 실행시킨 곳에서 this 바인딩이 되서 전역에 있는 name 변수 값인 outer가 출력이 될 줄 알았는데 전혀 예상과 다르게 undefined가 출력이 되는데요. 왜 그런지 궁금합니다.

 

const name = 'outer';

 

function test1() {

  const name = 'test1';

  console.log(this.name);

}

const test2 = () => {

  const name = 'test2';

  console.log(this.name);

};

test1(); // undefined

test2(); // undefined

 

javascript this arrowfunction

답변 1

0

정재남

변수 선언을 const 로 하셨는데 이는 ES6에서 등장한 새로운 변수선언 방식으로,

본 강의에서는 다루지 않는 내용입니다.

그래도 간략하게나마 답변드리자면, 

let, const로 선언한 전역변수는 전역객체의 프로퍼티가 되지 않습니다.

인스턴스에서 prototype 프로퍼티에 직접 접근해야하는 이유

0

59

1

setTimeout 에서 this

0

80

1

2강부터 영상이 나오지 않습니다.

0

174

1

자바스크립트 주석에 이상한 점이 있어서 문의드립니다.

0

218

2

return 문 안에 여러 함수가 존재하는 것이 이해되지 않습니다.

1

259

1

클래스 static 멤버

1

253

1

실행컨텍스트와 스택프레임

2

567

1

프로토타입으로 상속할때 브릿지 사용 이유

0

320

1

호이스팅 관련 질문

1

335

1

책 66p. 예제 3-2 질문입니다.

0

356

1

강의 내용 10:58 캡슐화 질문입니다.

1

397

1

강의 내용 5:10 질문입니다.

1

422

2

전역 공간에서의 this

0

426

2

18:31 addEventListener의 this

1

480

1

outerEnvironmentReference 질문

1

372

1

실행 컨텍스트와 클로저에 대해 질문드립니다.

1

448

1

Object.prototype.constructor의 [[prototype]] ?

1

658

1

함수를 값으로 할당할 때

2

457

1

15:54 'ddd' 사라지는 오류?

4

375

1

프로토타입 getPrototypeOf(instance).constructor(n,a) 질문입니다.

1

404

1

기본형/가변형 질문입니당

0

333

0

선생님 그러면 섹션 0만 봐도 무방한가요!?

0

335

1

Hoisting과 environmentRecord에 관한 질문입니다.

1

290

1

안녕하세요, 데이터 변경 질문입니다.

0

327

1