apply 와 call
프로 그래 밍 개발 경험 이 있 는 사람들 은 함수 가 작용 역 이라는 것 을 알 고 있 으 며, 자 바스 크 립 트 의 함수 도 마찬가지다.그러나 이 함수 의 역할 영역 을 변경 하려 면 가장 편리 한 방법 은 apply 와 call 방법 을 통 해
사용법
apply 와 call 은 기능 적 으로 같 지만 유일한 차이 점 은 파 라 메 터 를 제공 하 는 방식 입 니 다.
window.color = "red";
var a = {
color : "blue"
};
var x = function(){
alert(this.color+"--"+arguments.length);
}
x();//red is 0
x.apply(window);//red is 0
x.apply(a,[1,2,3]);//blue is 3
window.color = "red";
var a = {
color : "blue"
};
var x = function(){
alert(this.color+" is "+arguments.length);
}
x();//red is 0
x.call(window);//red is 0
x.call(a,1,2,3);//blue is 3
fun.apply(thisArg[, argsArray])
매개 변수
thisArg
fun 함수 가 실 행 될 때 지정 한 this
。
값 은 반드시 이 함수 가 실 행 될 때 진정한 this
값 이 아니 라 이 함수 가 비 엄격 한 모드 에 있 으 면 this
또는 null
로 지 정 될 때 undefined
전역 대상 (브 라 우 저 에서 window 대상) 으로 지 정 됩 니 다.동시에 값 이 원시 값 (숫자, 문자열, 불 값) 인
은 이 원시 값 의 자동 포장 대상 을 가리킨다.this
한 배열 또는 클래스 배열 대상 은 그 중의 배열 요 소 는 단독 매개 변수 로 argsArray
함수 에 전 달 됩 니 다.이 매개 변수의 값 fun
이나 {{jsxref ("Global Objects / undefined", "undefined")}} 은 매개 변 수 를 입력 할 필요 가 없다 는 뜻 입 니 다.ECMAScript 5 부터 클래스 배열 대상 을 사용 할 수 있 습 니 다.브 라 우 저 호환성 은 본문 아래쪽 내용 을 참조 하 시기 바 랍 니 다.2. call 문법
fun.call(thisArg[, arg1[, arg2[, ...]]])
매개 변수
null
fun 함수 가 실 행 될 때 지정 한 thisArg
값 입 니 다.주의해 야 할 것 은 지정 한 this
값 이 반드시 이 함수 가 실 행 될 때의 진정한 this
값 은 아니 며, 이 함수 가 비 엄격 한 모드 에 있 으 면 this
과 null
전역 대상 (브 라 우 저 에서 window 대상) 으로 지정 되 며, 동시에 값 은 원시 값 (숫자, 문자열, 불 값) undefined
으로 지정 된다 는 것 이다.이 원시 값 의 자동 포장 대상 을 가리 킬 것 입 니 다.this
지정 한 매개 변수 목록 입 니 다.이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.