>  Q&A  >  본문

javascript - 이것이 가리키는 문맥에 대한 질문입니까?

코드로 바로 이동:

으아아아

위 코드의 이 점이 다른 이유는 무엇인가요?

이제 잘 이해가 되었습니다. 답변 부탁드립니다!

某草草某草草2662일 전859

모든 응답(5)나는 대답할 것이다

  • 大家讲道理

    大家讲道理2017-07-05 10:58:18

    함수 차용과 생성자 함수를 버리고 이제 두 가지 유형만 남았습니다. 하나는 일반 함수이고 다른 하나는 객체 메서드입니다.

    객체 메서드는 객체를 가리키고, 일반 함수는 전역을 가리킵니다.

    회신하다
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-07-05 10:58:18

    누가 이 함수를 호출하든 this누구를 가리킵니다.

    this的指向只和你如何调用这个函数有关,比如你说第一个this指向test,这可不一定,有的是办法把这个this的指向改掉。只有当你运行test.outer()的时候,第一个this才会指向test의 지정은 이 함수를 호출하는 방법에만 관련됩니다. 예를 들어 첫 번째

    test를 가리키는 경우 반드시 그렇지는 않습니다. 🎜. test.outer()를 실행할 때만 첫 번째 🎜가 test를 가리킵니다. 🎜

    회신하다
    0
  • PHP中文网

    PHP中文网2017-07-05 10:58:18

    /a/11...

    회신하다
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-07-05 10:58:18

    이것은 클로저 문제입니다. 함수 메소드를 포함하여 객체 리터럴을 통해 객체에 속성이 할당되면 이 함수 메소드에는 콘솔 출력이 있고 이 함수에서 함수가 선언되면 일반적인 상황에서 클로저 문제가 발생합니다. , 이것은 창을 가리킨다. 특별한 상황에서는 이 값을 변경할 수 있다. 내가 쓴 패킷 폐쇄에 대한 글을 읽으면 내 프로필을 읽을 수 있다.

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-07-05 10:58:18

    실제로 익명으로 답변하는 것은 옳지 않습니다! 객체의 함수 내부에 정의된 함수는 this 내부는 물론 상위 환경 변수를 직접 얻을 수 없습니다. 이 방법으로 var that=this와 같은 변수를 정의해야 합니다. 이 객체의 레벨을 지정합니다.
    var test = {

    으아악

    회신하다
    0
  • 취소회신하다