함수 호출 방법: 호출 대 적용
JavaScript에서 호출 및 적용 방법을 사용하면 사용자 정의 컨텍스트 및 인수로 함수를 호출할 수 있습니다. . 두 방법 모두 동일한 목적을 수행하지만 인수 전달을 처리하는 방법이 다릅니다.
호출 및 적용: 인수 처리
주요 차이점은 인수 전달 방식에 있습니다. 함수에 제공됩니다:
이 구별을 기억하기 위해 "배열은 A, 쉼표는 C"라는 니모닉을 사용할 수 있습니다. 유용합니다.
구문:
전화:
theFunction.call(valueForThis, arg1, arg2, ...)
적용:
theFunction.apply(valueForThis, arrayOfArgs)
예:
function theFunction(name, profession) { console.log("My name is " + name + " and I am a " + profession + "."); } theFunction("John", "fireman"); theFunction.apply(undefined, ["Susan", "school teacher"]); theFunction.call(undefined, "Claude", "mathematician");
In 이 예에서 call 메소드는 쉼표로 구분된 인수와 함께 사용되는 반면, apply 메소드는 인수 배열을 사용합니다.
확산 연산자:
ES6 이상에서는 스프레드 연산자를 사용하여 배열을 인수로 전달할 수 있습니다. call 방법:
theFunction.call(undefined, ...["Matthew", "physicist"]);
성능 및 사용 권장 사항:
call과 Apply 사이에는 큰 성능 차이가 없습니다. 사용할 방법의 선택은 특정 상황에 따라 다릅니다.
위 내용은 JavaScript의 호출과 적용: 이러한 함수 호출 방법은 어떻게 다릅니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!