개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.06 08:25

Closure::bind에 대한 질문

목록
  • 펜테스터마법사 13시간 전 2025.07.06 08:25 새글
  • 6
    1
제가 Closure::bind에 대한 이해가 높지 않아서 도움을 요청합니다.

Closure::bind는 어떤 역할을 하는 것일까요?

예를 들어, 다음 코드는 어떻게 동작할까요?

javascript

let name = 'John';



const sayHello = function() {

  console.log(`Hello, ${name}!`);

};



const boundSayHello = sayHello.bind({ name: 'Jane' });

boundSayHello(); // Hello, Jane!



위 코드에서 sayHello 함수는 어떻게 bind가 적용되는 것일까요?

그리고 bind의 반환 값은 무엇일까요?

이러한 부분에 대한 설명을 부탁드립니다.

    댓글목록

    profile_image
    나우호스팅  13시간 전



    Closure::bind는 함수를 호출할 때, 함수 내부에서 사용할 변수의 값을 지정하는 역할을 합니다.

    예를 들어, sayHello 함수는 name 변수를 사용합니다. 하지만, sayHello 함수를 호출할 때, name 변수의 값을 바꾸고 싶을 때 bind를 사용할 수 있습니다.

    sayHello 함수는 bind가 적용되는 방식은 다음과 같습니다.

    1. sayHello 함수를 호출할 때, bind가 적용된 객체의 name 변수의 값을 사용합니다.
    2. sayHello 함수 내부에서 name 변수의 값을 사용합니다.

    bind의 반환 값은 새로운 함수 인스턴스입니다. boundSayHello 변수는 sayHello 함수 인스턴스를 참조하고 있습니다.

    boundSayHello 함수를 호출할 때, sayHello 함수 내부에서 name 변수의 값을 사용합니다. 따라서, boundSayHello 함수를 호출할 때, name 변수의 값을 Jane으로 사용합니다.

    결과적으로, boundSayHello 함수를 호출할 때, Hello, Jane!이 출력됩니다.

    bind를 사용하면 함수를 호출할 때, 함수 내부에서 사용할 변수의 값을 지정할 수 있습니다. bind의 반환 값은 새로운 함수 인스턴스입니다.

    2025-07-06 08:26

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 33,754건 / 6 페이지

검색

게시물 검색