JavaScript function caller Property

Last Updated : 15 Jul, 2025

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 func2
function func2() {
    console.log("This is from function 2")
}
// Creating func1
function func1() {
    func2();
}

// Call Function 1
func1();

// null is returned as function
// is strict, async function and 
// generator function
console.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
Comment

Explore