call,apply,this 지향
ply () 방법은 두 개의 매개 변수를 수신합니다: 첫 번째: 현재 대상을 가리킨다. 즉 이 함수를 호출하고 있는 대상을 가리킨다. 두 번째: 그룹, 예: fn.apply(this, ["name", "jeck"]);또는 배열 객체, 예: fn.apply(this, new Array("name", "jeck"));또는 arguments 객체
call () 방법은 두 개의 매개 변수를 수신합니다: 첫 번째: 현재 대상, 즉 이 함수를 호출하고 있는 대상 두 번째: 매개 변수 목록, 예: f.call(this, num1, num2, num3);
://call 방법,this의 지향을 바꿀 수 있고,this는 괄호에 적혀 있습니다
var a={
name:" ",
eat:function(num,num1){
console.log("eat"+num+num1,this)
}
}
var b ={name:"app"};
a.eat.call(b);//this b
a.eat.call(red);//this red
a.eat.call(this);//this window
a.eat.call()//this window
a.eat.call(b," "," ");// , this
//apply: call, :
a.eat.apply(b,[" "," "]);
this의 지향 1.누가 사용하는 방법,this는 누구를 가리킨다
function test(){
console.log("test ");
return function(){
console.log(" ")
}
}
console.log(window.test,this);//this window
2. 직접 호출 방법,this는 window를 가리키며 레드에 클릭 이벤트를 추가합니다
①red.onclick=test();//
②red.onclick=test;// test
red.onclick();//this red
test()//this window
3. 타이머의this가 window를 가리킨다.
function test(){
var _this = this;// this red
setTimeout(function(){
console.log("test ",_this);
},1000)
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.