⊗jsPmFTDTCh 236 of 505 menu

JavaScript에서 함수 타입을 확인하는 방법

아래 문제에서는 제시된 함수가 함수 선언(Function Declaration)인지 함수 표현식(Function Expression)인지 판단해야 합니다.

간단한 경우에는 시각적으로 판단하기 어렵지 않습니다. 하지만 여러분의 판단이 맞는지 어떻게 확인할 수 있을까요? 함수 선언(Function Declaration)과 함수 표현식(Function Expression)의 차이점을 이용하세요: 전자는 정의보다 앞서 호출될 수 있지만, 후자는 그럴 수 없습니다.

다음과 같은 함수가 있다고 가정해 보겠습니다:

let test = function() { console.log('!'); }

이 함수를 정의하기 전에 호출해 보겠습니다:

test(); // 콘솔에 오류를 출력하면, 함수 표현식(Function Expression)입니다. let test = function() { console.log('!'); }

다른 예시입니다:

func(); // '!'를 출력하면, 함수 선언(Function Declaration)입니다. function func() { console.log('!'); }

함수 앞에 더하기 기호를 붙여 보겠습니다:

func(); // 콘솔에 오류를 출력하면, 함수 표현식(Function Expression)입니다. +function func() { console.log('!'); }

위 함수는 함수 표현식(Function Expression)이며 어떤 변수에도 할당되지 않았기 때문에, 이름 func로는 접근할 수 없어 호출할 방법이 없습니다.

제시된 함수가 함수 선언(Function Declaration)인지 함수 표현식(Function Expression)인지 판단하세요:

let test = function func() { console.log('!'); }

제시된 함수가 함수 선언(Function Declaration)인지 함수 표현식(Function Expression)인지 판단하세요:

console.log( function func() { console.log('!'); } );

제시된 함수가 함수 선언(Function Declaration)인지 함수 표현식(Function Expression)인지 판단하세요:

+function func() { console.log('!'); }

제시된 함수가 함수 선언(Function Declaration)인지 함수 표현식(Function Expression)인지 판단하세요:

function func() { console.log('!'); }
한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부