The function.caller property of the JavaScript function object returns the function that invoked the specified function. It returns null if the function “f” was invoked by the top-level code in JavaScript. For functions like strict functions, async functions, and generator functions this method returns null.
Syntax:
function.caller
Parameters: This function does not accept any parameter.
Return Value: This function returns null for strict, async function, and generator function callers.
A few examples are given below for a better understanding of the function methods.
Example 1: This example shows the basic use of the Javascript function.caller property.
Javascript
// Creating func2function func2() { console.log("This is from function 2")}// Creating func1function func1() { func2();}// Call Function 1func1();// null is returned as function// is strict, async function and // generator functionconsole.log("from function.caller: ", func1.caller) |
Output:
This is from function 2 from function.caller: null
Example 2: This example shows the basic use of the Javascript function.caller property.
Javascript
function myFunc() { if (myFunc.caller == null) console.log("The function " + "was called from the top!"); else console.log("This function's " + "caller was " + myFunc.caller);}myFunc() |
Output:
The function was called from the top!
We have a complete list of Javascript Function methods, to check those please go through this Javascript Function Complete reference article.
Browsers Supported:
- Google Chrome 1 and above
- Microsoft Edge 12 and above
- Mozilla Firefox 1 and above
- Internet Explorer 8 and above
- Safari 3 and above
- Opera 9.6 and above
