JavaScript - 문제 미리보기
문제 600
hard
`this` 바인딩의 우선순위를 올바른 순서대로 나열한 것은? (높은 우선순위부터)
정답: A
JavaScript에서 `this` 바인딩의 우선순위는 다음과 같습니다:
1. bind() (최고 우선순위)
`func.bind(obj)`로 명시적으로 바인딩된 함수는 다른 어떤 방법으로도 `this`를 변경할 수 없습니다.
2. call()/apply()
`func.call(obj)` 또는 `func.apply(obj)`로 명시적으로 호출 시 `this`를 지정합니다.
3. 객체 메서드
`obj.method()`처럼 객체의 메서드로 호출될 때 `this`는 해당 객체를 가리킵니다.
4. 전역 스코프 (최저 우선순위)
일반 함수 호출이나 전역에서 사용할 때의 기본 바인딩입니다.
이 우선순위를 기억하면 복잡한 상황에서도 `this`가 무엇을 가리키는지 정확히 판단할 수 있습니다.
1. bind() (최고 우선순위)
`func.bind(obj)`로 명시적으로 바인딩된 함수는 다른 어떤 방법으로도 `this`를 변경할 수 없습니다.
2. call()/apply()
`func.call(obj)` 또는 `func.apply(obj)`로 명시적으로 호출 시 `this`를 지정합니다.
3. 객체 메서드
`obj.method()`처럼 객체의 메서드로 호출될 때 `this`는 해당 객체를 가리킵니다.
4. 전역 스코프 (최저 우선순위)
일반 함수 호출이나 전역에서 사용할 때의 기본 바인딩입니다.
이 우선순위를 기억하면 복잡한 상황에서도 `this`가 무엇을 가리키는지 정확히 판단할 수 있습니다.
💡 학습 팁
이 문제를 포함한 JavaScript 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.