이전 기사에서 익명 함수를 호출하는 다양한 방법을 언급했습니다. 이 문서에서는 명명된 함수를 호출하는 다양한 방법을 살펴봅니다.
1, ()
가장 일반적으로 사용되는 것은 함수 호출/실행을 위한 () 연산자입니다.
ECMAScript3에 호출을 추가하고 Function에 적용하면 다음과 같은 두 가지 유형이 있습니다.
2.전화
3. 신청
call 및 Apply는 순전히 함수 호출/실행에만 사용될 수 있지만 함수 실행 컨텍스트를 변경하는 데 더 많이 사용됩니다.
4. 새로운(이 방법은 권장되지 않음)
new의 본질은 클래스의 인스턴스를 생성/구성하는 것입니다. 여기에 정의된 fun1 및 fun2는 분명히 클래스가 아닙니다(이건 프로토타입도 아닙니다). 그러나 두 기능 모두 실행되었습니다. 이것은 새로운 부작용입니다.
위의 호출 메소드 중 4가지 메소드의 실행 결과에는 차이가 없습니다. 하지만 함수에 반환 값이 있는 경우 new로 호출할 때 약간 실망할 수 있습니다.
이것으로 바꿔보세요
요약하자면: 새로운 메소드를 사용하여 함수를 호출할 때. 반환값이 있는 경우 반환값이 String, Number, Boolean 등과 같은 JavaScript 내장형(기본형)인 경우 반환값이 객체인 경우에는 반환하지 않습니다. function , array 및 기타 객체 유형의 경우 객체, 함수, 배열이 직접 반환됩니다.
반환값이 내장형(기본형)인 경우 new fun()은 정확히 무엇을 반환하나요? 다음 기사에서는 새 메서드 호출에 대해 자세히 설명합니다.