typeof 연산자로 함수 여부 확인하기
JavaScript에서 변수가 함수인지 확인하려면 typeof 연산자를 사용하면 됩니다. typeof는 피연산자의 데이터 타입을 문자열로 반환하며, 함수의 경우 "function"이라는 값을 리턴합니다.
아래 예제 코드를 실행해 보면 변수가 함수 타입인지 어떻게 판별할 수 있는지 확인할 수 있습니다.
예제 코드
<html>
<body>
<script>
var res = function(){
//
};
if (typeof res === "function") {
alert("A function")
}
</script>
</body>
</html>코드 설명
위 코드에서는 먼저 res라는 변수에 익명 함수를 할당합니다. 그다음 typeof res === "function" 조건문을 통해 해당 변수가 함수 타입인지 검사하고, 참일 경우 경고창에 "A function" 메시지를 표시합니다.
참고 사항
typeof 연산자는 일반 객체에는 "object"를 반환하지만, 함수에는 특별히 "function"을 반환하기 때문에 함수 판별에 매우 유용합니다. 다만 async function이나 제너레이터 함수 등도 모두 "function"으로 반환되므로, 세부적인 함수 종류까지 구분해야 한다면 추가 검사가 필요할 수 있습니다.