Introduction
If you are sharing scripts from different modules or you have a large codebase, you can use the typeof
operator to check if a function exists.
What Does typeof Operator Do?
The typeof
operator returns the type of the given operand. It could return any of the following:
"function"
- “undefined”
- “object”
- “boolean”
- “number”
- “bigint”
- “string”
- “symbol”
You can see what typeof
returns in the example below:
typeof Math.floor === "function";
typeof 37 === "number";
typeof "Just a string" === "string";
typeof { name: "Reza Baharvand" } === "object";
typeof true === "boolean";
typeof Symbol() === "symbol";
You can see the Math.floor
returns a function
. If you want to learn more about Math.floor() function, read this article.
Writing A Function To Check If The function() Exists
You can check if a function exists in your code by using the following code:
// Random function that increments a number by 2
function addTwo(num) {
return num + 2;
}
// function to check if another function exists
function funcExists(func) {
if (typeof func === "function") {
console.log("Function exists");
}
}
funcExists(addTwo);
// Function exists
funcExists(anotherFunction);
// ReferenceError: anotherFunction is not defined
The funcExists()
function returns "Function exists"
if the provided argument is a function
, otherwise it throws a reference error.