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.
javascript
<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.
javascript
<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