How to Check if a Function Exists in JavaScript

Because JavaScript is a loosely-typed language, it can sometimes be unclear what type a variable is.
In the case of functions, if you call a function that is non-existent, you will get an error.
To avoid this, you can check if the function exists before calling it.
In this post, we'll learn how you can check if a function exists before calling it in JavaScript.
Checking if a function exists in JavaScript
First, let's define a simple function:
const greeting =(name => {
console.log(`Hello ${name}`);
}
We know this is a function because we can call it:
const greeting = name => {
console.log(`Hello ${name}`);
}
greeting("John");
Hello John
However, what if we want to check if the function exists before calling it?
To do this, you can try using the typeof
operator:
const greeting = name => {
console.log(`Hello ${name}`);
}
if (typeof greeting === "function") {
console.log("This is a valid function")
}
This is a valid function
Another alternative you could do is simply try calling the function anyways but wrapping it in a try-catch block to catch any potential exceptions that might be thrown:
const greeting = name => {
console.log(`Hello ${name}`);
}
try {
greeting("John");
} catch (error) {
console.log(error)
}
Hello John
If the function was not valid, an error would get printed to the console but the script would continue executing.
Conclusion
In this post, we learned how to check if a function exists in JavaScript.
Simply use the typeof
operator or try calling the function within a try-catch block for safety.
Thanks for reading!
If you want to learn about web development, founding a start-up, bootstrapping a SaaS, and more, follow me on X! You can also join the conversation over at our official Discord!
Leave us a message!