이 글의 내용은 apply()와 call() 메소드에 대한 내용입니다. 참고할만한 가치가 있으니 도움이 필요한 분들에게 도움이 되었으면 좋겠습니다.
각 함수에는 상속되지 않은 두 가지 메서드인 apply()와 call()이 포함되어 있습니다. ;
call과 apply는 모두 Function.prototype의 메소드에 속하므로 각 함수 인스턴스에는 call과 apply 속성이 있습니다.
Function
call() 메소드와 apply() 메소드는 동일한 효과를 갖습니다. .
Difference
두 매개변수의 차이점은 매개변수를 받는 방식에 있습니다.
call(): 첫 번째 매개변수는 이 값이 변경되지 않지만 나머지 매개변수는 함수에 직접 전달된다는 것입니다. call() 메소드를 사용할 때 함수에 전달되는 매개변수는 하나씩 나열되어야 합니다. 예: call(obj,a,b,c)
apply(): 함수에 전달되는 것은 매개변수 배열입니다. 예: apply(obj,[a,b,c])
업로드된 코드:
function add(c, d){ return this.a + this.b + c + d; } var o = {a:1, b:3}; add.call(o, 5, 7); // 1 + 3 + 5 + 7 = 16 this指向o add.apply(o, [10, 20]); // 1 + 3 + 10 + 20 = 34 this指向o
JavaScript 비디오 튜토리얼을 참조하세요. 중국사이트칼럼!
위 내용은 apply()와 call() 메소드는 무엇을 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!