Metoda THotPDF.EvaluateLoadedFieldJavaScript

Evaluează subsetul sigur acceptat al unei acțiuni de câmp încărcate, fără a porni un motor JavaScript

Declarație

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

Result

Returnează True când cel puțin o acțiune acceptată s-a executat; Evaluation raportează valoarea rezultată, acceptarea validării, numărul de operații și eventualul motiv de respingere

Supported expressions

Evaluatorul acceptă literali boolean, numeric, string, null, undefined și array; citiri de câmpuri și de event.value; indexarea array-urilor; operatori aritmetici, unari, de comparație, de egalitate, logici cu scurtcircuitare și condiționali; precum și atribuiri către event.value sau event.rc

Lista de permisiuni include AFSimple_Calculate, AFRange_Validate, conversiile de număr și string, parseFloat, parseInt, isNaN, câteva funcții Math, Date.parse, Date.UTC, Array.isArray, precum și proprietăți și metode delimitate pentru string și array

Operațiile cu date calendaristice sunt deterministe și independente de fusul orar: intrarea de tip ISO fără offset este interpretată ca UTC, iar Z explicit și offset-urile numerice sunt respectate

Safety boundary

Parserul acceptă doar calcule și validări declarative delimitate și respinge buclele, evaluarea dinamică, accesul la aplicație, submit-ul, importul, lansarea și alt conținut activ

Fiecare apel este limitat la 8.192 octeți de script, 32 de instrucțiuni, 4.096 octeți de expresii, 32 de niveluri de parser, 1.024 de operații, 64 de argumente, 128 de elemente de array, 65.536 octeți de string și 262.144 octeți de valori urmărite; depășirea oricărei limite eșuează în mod închis (fail closed), cu un rezultat de diagnostic

API-uri asociate