Поделиться через


Свойство caller

Возвращает ссылку на функцию, которая вызвала текущую функцию.

function.caller 

Аргументы

  • функция
    Обязательный. Имя объекта Function, выполняемого в данный момент.

Заметки

Свойство caller определяется для функции только при ее выполнении. Если функция вызывается из верхнего уровня программы JScript, свойство caller содержит значение null.

Если свойство caller используется в строковом контексте, результат совпадает со строкой functionName.toString, то есть отображается декомпилированный текст функции.

Примечание

Свойство caller недоступно при выполнении программы в быстром режиме, который используется в языке JScript по умолчанию.Чтобы выполнить компиляцию программы, в которой используется свойство caller, из командной строки, необходимо отключить быстрый режим с помощью параметра /fast-.Отключать параметр быстрого выполнения программ в ASP.NET небезопасно, поскольку могут возникнуть проблемы с многопоточным выполнением.

Пример

В следующем примере показано использование свойства caller.

function callLevel()
{
    if (callLevel.caller == null)
        print("callLevel was called from the top level.");
    else
    {
        print("callLevel was called by:");
        print(callLevel.caller);
    }
}

function testCall()
{
    callLevel()
}

// Call callLevel directly.
callLevel();
// Call callLevel indirectly.
testCall();

Результат выполнения этой программы следующий.

callLevel was called from the top level.
callLevel was called by:
function testCall() {
   callLevel()
}

Требования

Версия 2

Применение:

Объект arguments| Объект Function

См. также

Ссылки

Оператор function