JS this, call 과 apply 및 리 셋 함수
1777 단어 apply
이 인용 은 하나의 대상 을 인용 합 니 다. 대상 이 다 르 거나 함수 호출 방식 이 다 르 기 때문에 this 인용 은 코드 의 문맥 에 따라 인용 대상 의 특성 을 자동 으로 바 꿉 니 다.
인용 규칙
1. 가장 바깥쪽 코드 에서 this 는 전체 대상 (windows) 을 참조 합 니 다.
2, 함수 내 에서 this 인용 은 함수 호출 방식 에 따라 다 릅 니 다.
1) 구조 함수 에서 this 참조 대상 은 구조 함수 생 성 대상 이다.
2) 방법 호출, this 는 수용 자 대상 을 참조 합 니 다.
3) 애플 과 콜 호출, 인용 대상 은 두 함수 의 매개 변수 로 지정
4) 다른 방식 으로 호출, 전역 대상 참조
call 과 apply 는 Function 대상 의 방법 입 니 다.
방법의 정의
call 방법: 문법: call ([thisObj [, arg 1 [, arg 2 [, [,.argN]]]]]) 정의: 한 대상 을 호출 하 는 방법 으로 현재 대상 을 다른 대상 으로 교체 합 니 다. 설명: 콜 방법 은 다른 대상 을 대체 하여 하나의 방법 을 호출 할 수 있다.call 방법 은 함수 의 대상 컨 텍스트 를 초기 컨 텍스트 에서 thisObj 가 지정 한 새로운 대상 으로 변경 할 수 있 습 니 다. thisObj 인 자 를 제공 하지 않 으 면 Global 대상 은 thisObj 로 사 용 됩 니 다. apply 방법: 문법: apply ([this Obj [, argArray]]]) 정의: 대상 의 한 방법 을 사용 하여 현재 대상 을 다른 대상 으로 교체 합 니 다. 설명: argArray 가 유효한 배열 이 아니 거나 arguments 대상 이 아니라면 TypeError 를 초래 할 수 있 습 니 다. argArray 와 thisObj 의 매개 변 수 를 제공 하지 않 으 면 Global 대상 은 thisObj 로 사용 되 고 매개 변 수 를 전달 할 수 없습니다.
쉽게 말 하면 다음 과 같다.
func. call (func 1, var 1, var 2, var 3) 에 대응 하 는 apply 표기 법 은: func. application (func 1, [var 1, var 2, var 3]) 입 니 다.
반전 함수 (callback)
function a(callback){
alert('a');
callback();// callback(), callback.apply(this)
}
function b(){
alert('b');
}
//
a(b);
function a(callback){
alert('a');
callback.call(this,'d');// callback(), callback.apply(this)
}
//
c(function(e){ alert(e); });
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JScall () 및 apply () 방법에 대한 인스턴스 요약 사용최근에 JacvaScript에서의call()방법과apply()방법을 만났습니다. 그리고 어떤 때는 이 두 방법이 정말 중요합니다. 그러면 이 두 방법의 사용과 차이를 정리하겠습니다. 모든 함수는 두 가지 비계승적인 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.