[javascript] 실행 컨텍스트와 메소드 호출(method invocation)의 동작 방식은 무엇인가?

메소드 호출은 객체의 메소드를 호출할 때 발생합니다. 이때 this 키워드는 해당 메소드를 호출한 객체를 가리킵니다.

예를 들어, 다음과 같은 코드가 있다면:

const myObj = {
  name: "Alice",
  sayHello: function() {
    console.log("Hello, " + this.name);
  }
};

myObj.sayHello();

위 코드에서 myObj 객체의 sayHello 메소드가 호출될 때, 메소드 내부에서 this.namemyObj 객체의 name 속성을 가리킵니다.

실행 컨텍스트는 이러한 메소드 호출 동작을 추적하고, 메소드가 실행될 때 this 값을 적절히 설정합니다.