Proprietà caller
Aggiornamento: novembre 2007
Restituisce un riferimento alla funzione che ha chiamato la funzione corrente.
function.caller
Argomenti
- function
Obbligatorio. Nome dell'oggetto Function correntemente in esecuzione.
Note
La proprietà caller è definita per una funzione solo quando questa è in esecuzione. Se la funzione viene richiamata dal livello superiore di un programma JScript, la proprietà caller includerà un valore null.
Se la proprietà caller viene utilizzata in un contesto di stringa, il risultato corrisponderà a quello restituito da functionName.toString, ovvero verrà visualizzato il nome della funzione.
Nota: |
---|
La proprietà caller non è disponibile durante l'esecuzione in modalità veloce, predefinita in JScript. Per compilare un programma dalla riga di comando in cui venga utilizzata la proprietà caller, è necessario disattivare l'opzione della modalità veloce mediante il parametro /fast-. La disattivazione della modalità veloce in ASP.NET non garantisce risultati soddisfacenti a causa dei problemi relativi al threading. |
Esempio
Nell'esempio seguente viene illustrato l'utilizzo della proprietà 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();
Una volta compilato il programma con l'opzione /fast-, l'output sarà il seguente:
callLevel was called from the top level.
callLevel was called by:
function testCall() {
callLevel()
}
Requisiti
Si applica a:
Oggetto Arguments| Oggetto Function