Can you do this JS Interview Question?
- JavaScript의
bind 메서드는 함수의 this 컨텍스트를 특정 객체에 영구적으로 연결합니다. 🔗
- 인터뷰 질문에서는 함수에
bind를 사용하여 첫 번째 컨텍스트(예: { name: "John" })를 설정한 후, 다시 체이닝하여 두 번째 컨텍스트(예: { name: "An" })를 설정하는 시나리오를 제시합니다. ⛓️
- 많은 사람들이 체이닝된
bind 호출이 this 컨텍스트를 다시 변경할 것이라고 오해합니다. 🤔
- 하지만
bind는 한 번 특정 객체에 바인딩되면, 해당 함수는 항상 그 객체에 바인딩된 상태를 유지합니다. 🚫
- 즉, 이미
bind된 함수에 대해 추가적인 bind 호출은 this 컨텍스트 변경에 아무런 영향을 미치지 않습니다. 🛑
- 따라서 예시에서 최종 출력은 첫 번째
bind에 의해 설정된 "John"이 됩니다. ✅
데브허브 | DEVHUB | Can you do this JS Interview Question?