In this article, we see the methods to find out the caller function in Javascript. Sometimes, the developer may want to modify how a function works on the basis of its caller function. To find out the caller function name, we will use the Function object’s caller property.
Property:
Here, the Function object is replaced by the name of the function of which we want to know the parent function name.
Example 1: When the below code is executed, we can see the name of the parent function being logged out.
<script> // Child function
function Foo() {
// This will print 'Bar'
console.log(Foo.caller.name);
}
// Parent function
function Bar() {
Foo();
}
Bar();
</script> |
Output:
Bar
Example 2: Suppose we call the Foo function from multiple functions.
<script> // Child function
function Foo() {
// This will print parent function's name
console.log(Foo.caller.name);
}
// Parent function
function Geeks() {
Foo();
}
// Parent function
function Fun() {
Foo();
}
// Parent function
function Sam() {
Foo();
}
Geeks();
Fun();
Sam();
</script> |
Output:
Geeks Fun Sam
You can know more about the parent function from the property Function.caller