Condividi tramite


Metodo eval (JScript)

Aggiornamento: novembre 2007

Valuta il codice JScript e lo esegue.

function eval(codeString : String [, override : String])

Argomenti

  • codeString
    Obbligatorio. Stringa contenente codice JScript valido.

  • override
    Facoltativo. Una stringa che determina quali autorizzazioni di protezione applicare al codice in codeString.

Note

La funzione eval consente di eseguire in modo dinamico il codice sorgente JScript.

Il codice passato al metodo eval viene eseguito nello stesso contesto della chiamata al metodo. Le nuove variabili dei tipi definiti nell'istruzione eval non sono visibili al programma che le contiene.

Il codice passato al metodo eval viene eseguito in un contesto di protezione limitato, a meno che non venga passata la stringa "unsafe" come secondo parametro. Il contesto di protezione limitato impedisce l'accesso a risorse di sistema, quali il file system, la rete o l'interfaccia utente. Se il codice tenta di accedere a tali risorse, viene generata un'eccezione di protezione.

Quando il secondo parametro di eval è la stringa "unsafe", il codice passato al metodo eval viene eseguito nello stesso contesto di protezione del codice chiamante. Nel secondo parametro viene rilevata la distinzione tra maiuscole e minuscole, pertanto le stringhe "Unsafe" o "UnSAfE" non avranno priorità sul contesto di protezione limitato.

Nota sulla sicurezza:

Utilizzare eval in modalità non protetta solo per eseguire stringhe di codice ottenute da risorse affidabili.

Esempio

Nell'esempio di codice seguente la variabile mydate viene inizializzata su una data di prova o sulla data corrente, a seconda del valore della variabile doTest.

var doTest : boolean = true;
var dateFn : String;
if(doTest)
   dateFn = "Date(1971,3,8)";
else
   dateFn = "Date()";

var mydate : Date;
eval("mydate = new "+dateFn+";");
print(mydate);

L'output del programma è il seguente:

Thu Apr 8 00:00:00 PDT 1971

Requisiti

Versione 1

Si applica a:

Oggetto Global

Vedere anche

Riferimenti

Oggetto String