이 글에서는 JavaScript에서 this 포인터를 수정하는 다양한 방법을 설명합니다. JavaScript에서 this 포인터를 수정하는 방법을 모르거나 JavaScript에서 this 포인터를 수정하는 데 관심이 있다면 이 글을 살펴보겠습니다. , 헛소리는 그만하고 본론으로 들어가겠습니다
JavaScript의 이 주제는 심도 있는 논의가 필요한 주제입니다. 다음은 이 논점을 바꾸는 3가지 일반적인 방법을 요약한 것입니다. 먼저, 함수의 개념을 명확히 하세요. 함수 자체는 특별한 유형입니다. 함수도 변수로 간주될 수 있다는 점을 항상 이해해야 합니다.
일반인의 용어로 이 함수가 객체의 메소드(키)라면 다음과 같습니다. 함수는 이 객체를 가리킵니다.
var a = function(obj) { alert(this == obj); } var obj = {}; obj.fun = a; obj.fun(obj); //true
이 함수는 변수와 동일합니다. 객체에 바인딩되면 이 지점이 기본 window 객체에서 obj 객체로 변경됩니다.
var obj = new a();
객체는 이 문을 통해 생성되며 함수의 this는 obj를 가리킵니다.
1.apply 메소드
param1: 함수에 이 포인터를 표시합니다.
param2: 컬렉션 []
예: 호출된 함수 name .apply(param1, param2);
첫 번째 방법 검토
var a = function(o) { alert(this == o); } var obj = {}; obj.fun = a; obj.fun(obj); //true
간단합니다. 한 문장에 적용을 사용하세요
a.apply(obj,[obj]);
2.call method
param1: show 함수에서 this의 포인터
param2: 두 번째 매개변수는 show 함수의 실제 매개변수로 시작합니다. 예: 호출된 함수 name.call(param1, param2, param3)
에 대해 잘 모르는 경우 위의 내용이 전부입니다. , 혼자서도 쉽게 양면을 마스터할 수 있습니다!
관련 권장 사항:
JS의 4가지 this 값 모드
Javascript 함수의 4가지 바인딩 형식
위 내용은 JavaScript에서 이것이 가리키는 것을 수정하는 다양한 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!