THotPDF.EvaluateLoadedFieldJavaScript Method

Valuta il sottoinsieme sicuro supportato di una singola azione di campo caricata, senza avviare un motore JavaScript

Dichiarazione

function EvaluateLoadedFieldJavaScript(FieldIndex: Integer;
  Trigger: THPDFFormFieldActionTrigger; const InputValue: AnsiString;
  out Evaluation: THPDFJavaScriptEvaluationResult): boolean;

Risultato

Restituisce True quando almeno una azione supportata viene eseguita; Evaluation riporta il valore risultante, l'accettazione della validazione, il numero di operazioni ed eventuali motivi di rifiuto

Espressioni supportate

L'evaluator supporta letterali boolean, number, string, null, undefined e array; letture di campi e di event.value; indicizzazione di array; operatori aritmetici, unari, di confronto, di uguaglianza, logici short-circuit e condizionali; assegnamento a event.value o event.rc

L'allowlist include AFSimple_Calculate, AFRange_Validate, conversioni numeriche e di stringhe, parseFloat, parseInt, isNaN, funzioni selezionate di Math, Date.parse, Date.UTC, Array.isArray e proprietà e metodi delimitati di stringhe e array

Le operazioni su date sono deterministiche e indipendenti dal fuso orario: l'input in stile ISO senza offset viene interpretato come UTC, mentre Z esplicito e offset numerici vengono rispettati

Perimetro di sicurezza

Il parser accetta solo calcoli dichiarativi e validazioni delimitati, e rifiuta loop, valutazione dinamica, accesso all'applicazione, submission, import, launch e altri contenuti attivi

Ogni chiamata è limitata a 8.192 byte di script, 32 statement, 4.096 byte di espressioni, 32 livelli di parser, 1.024 operazioni, 64 argomenti, 128 elementi di array, 65.536 byte di stringhe e 262.144 byte di valori tracciati; superare un qualsiasi limite produce un fail closed con un risultato diagnostico

API correlate