THotPDF.EvaluateLoadedFieldJavaScript-Methode
Wertet die unterstützte sichere Teilmenge einer geladenen Feldaktion aus, ohne eine JavaScript-Engine zu starten
Deklaration
function EvaluateLoadedFieldJavaScript(FieldIndex: Integer;
Trigger: THPDFFormFieldActionTrigger; const InputValue: AnsiString;
out Evaluation: THPDFJavaScriptEvaluationResult): boolean;
Ergebnis
Liefert True, wenn mindestens eine unterstützte Aktion ausgeführt wurde; Evaluation meldet den resultierenden Wert, die Validierungsannahme, die Operationsanzahl und jeden Ablehnungsgrund
Unterstützte Ausdrücke
Der Evaluator unterstützt Boolean-, Zahlen-, String-, Null-, Undefined- und Array-Literale; Feld- und event.value-Lesezugriffe; Array-Indizierung; arithmetische, unäre, Vergleichs-, Gleichheits-, Short-Circuit-Logik- und Conditional-Operatoren; sowie Zuweisungen an event.value oder event.rc
Die Allowlist umfasst AFSimple_Calculate, AFRange_Validate, Zahlen- und String-Konvertierung, parseFloat, parseInt, isNaN, ausgewählte Math-Funktionen, Date.parse, Date.UTC, Array.isArray sowie begrenzte String- und Array-Properties und -Methoden
Datumsoperationen sind deterministisch und zeitzonenunabhängig: ISO-ähnliche Eingaben ohne Offset werden als UTC interpretiert, während explizite Z- und numerische Offsets berücksichtigt werden
Sicherheitsgrenze
Der Parser akzeptiert nur begrenzte deklarative Berechnungen und Validierungen und weist Schleifen, dynamische Auswertung, Anwendungszugriff, Submission, Import, Launch und anderen aktiven Inhalt zurück
Jeder Aufruf ist auf 8.192 Script-Bytes, 32 Statements, 4.096 Expression-Bytes, 32 Parser-Ebenen, 1.024 Operationen, 64 Argumente, 128 Array-Elemente, 65.536 String-Bytes und 262.144 Bytes verfolgter Werte begrenzt; das Überschreiten eines Limits schlägt fehl und liefert ein Diagnose-Ergebnis