자바스크립트에서 'this' 키워드를 사용하여 함수에서 함수 호출하기

자바스크립트에서 함수 내에서 다른 함수를 호출할 때 ‘this’ 키워드를 사용할 수 있습니다. ‘this’는 현재 실행 컨텍스트에서 호출된 함수를 참조하는데 사용됩니다. 이를 통해 함수 내에서 다른 함수를 호출하고 해당 함수의 메서드를 사용할 수 있습니다.

아래 예제를 통해 이를 살펴보겠습니다.

const myObject = {
  firstName: 'John',
  lastName: 'Doe',
  fullName: function() {
    return this.firstName + ' ' + this.lastName;
  },
  greeting: function() {
    const message = 'Hello, ' + this.fullName();
    console.log(message);
  }
};

myObject.greeting(); // 출력 결과: 'Hello, John Doe'

위의 예제에서는 myObject라는 객체를 생성하고 그 안에 firstName, lastName, fullName, greeting이라는 속성과 메서드를 정의했습니다.

fullName 메서드에서는 this.firstNamethis.lastName를 이용하여 firstNamelastName을 조합한 전체 이름을 반환합니다.

greeting 메서드에서는 fullName 메서드를 호출하고 해당 결과를 이용하여 인사말을 콘솔에 출력합니다. 이때 this.fullName()으로 fullName 메서드를 호출할 수 있습니다.

myObject.greeting()을 호출하면 “Hello, John Doe”라는 메시지가 출력됩니다.

속성이나 메서드 내에서 this 키워드를 사용한다는 것은 현재 객체의 메서드나 속성을 의미한다는 것을 기억해야 합니다. this는 호출한 함수의 컨텍스트에 따라 다르게 동작하므로 주의해야 합니다.

#javascript #this