JavaScript-Standarddatentypen sind verfügbar und werden von Oracle Data Relationship Management verwendet, sofern möglich. Beispiel: Datumsangaben werden mit dem Objekt vom Typ "Date" dargestellt. Funktionen sind selbst Objekte, und eine mit new aufgerufene Funktion erstellt ein Objekt, dessen Prototyp auf den Konstrukturprototyp der Funktion verweist, wie in jeder ECMA-kompatiblen JavaScript-Umgebung.
Hinweis:
JavaScript-DOM-(Document Object Model-)Objekte werden in Data Relationship Management-Skripten nicht unterstützt.
Sie müssen mit JavaScript-Syntax und integrierten Objekten vertraut sein. Unter anderem müssen Sie wissen, welche Methoden verfügbar sind. Zu den verfügbaren Datentypen gehören:
Array – Enthält length, pop, push, concat, join, reverse, slice, shift, sort usw.
Hinweis:
Aufgrund von Änderungen beim Verpacken von Elementen in JavaScript durch Caching-Mechanismen werden nicht alle Array-Funktionen wie erwartet oder wie in vorherigen Releases funktionieren. Beispiel: indexOf in JavaScript vergleicht Objekte basierend auf Speicherorten und nicht basierend auf dem Zeichenfolgen- oder Textwert von Elementen. Daher müssen für die Prüfung von Arrays andere Methoden in Betracht gezogen werden. IndexOf() verwendet den Vergleich "===" in JavaScript, und es gibt keine einzige Definition von "==", die verfügbar ist. Sie können JavaScript-Entwurfsmuster verwenden, um Ihren eigenen specialIndexOf() zur Bereitstellung eines "=="-Stilvergleichs zu implementieren.
Boolean – Stellt "True" und "False" dar.
Date – Enthält Date.parse(), month, day, year usw.
Error – Verwendet die Try-Catch-Fehlerbehandlung und error.message.
Function – Unterstützt die Standardaufruf- und Anwendungsfunktionalität.
Math – Enthält random, max, pow, round, sin, cos, floor, sqrt, log usw.
Number – Alle Zahlen in JavaScript sind Gleitkommawerte.
RegExp – Sie können die Sprachunterstützung für reguläre Ausdrücke verwenden oder explizit auf die Ausdrücke zugreifen.
String – Enthält concat, indexOf, lastIndexOf, substr, split, splice, search, replace, toUpperCase, toLowerCase usw.
Außerdem sind global verfügbare Funktionen wie parseInt, parseFloat, isNaN, decodeURI, encodeURI vorhanden.
Druckfunktion
Mit der Druckfunktion können Sie während der Skripterstellung Debugginginformationen ausgeben. Die Ergebnisse werden im Skripteditor im Abschnitt "Warnungen" angezeigt. Die Druckfunktion erstellt Ausgabe zwar nur in einem Testkontext, die Engine muss jedoch die Argumente erstellen. Kommentieren Sie daher alle Druckanweisungen aus, bevor Sie ein Skript für die Verwendung in der Produktionsumgebung speichern.
Formatfunktion
Die Formatfunktion bietet einen deutlich umfangreicheren Mechanismus für die Zeichenfolgenformatierung als Standard-JavaScript. Der erste Parameter ist eine Zeichenfolge, die Formatspezifizierer enthält, die in geschweiften Klammern stehen. Maskieren Sie Klammern, indem Sie sie verdoppeln. Beispiel: "{{" wird in der Ausgabe zu "{". Formatspezifizierer beginnen bei null und werden inkrementell erhöht. Wenn Sie einen Spezifizierer in einer Abfolge auslassen, wird der äquivalente Parameter für die Formatfunktion ignoriert. Beispiel: "{1}" ignoriert den ersten Wertparameter für "Format" und verwendet den zweiten.
Es gibt einen Shortcut. Sie können "Format" aufrufen und einen Formatspezifizierer ohne Klammern und mit nur einem Argument übergeben. Das Ergebnis entspricht Format("{0:<Spezifizierer>", <Argument>).
Die Formatspezifizierer gehen ähnlich vor wie in anderen Sprachen (z.B. Java oder C#). Die Syntax ist {<paramnum>} oder {<paramnum>;<format>}, wobei paramnum eine positive Ganzzahl ist, die bei null beginnt und inkrementell erhöht wird. Der Formatparameter hängt vom Typ des Objekts ab, das als dieser Parameter übergeben wird.
Im Allgemeinen geben die Formatparameter Werte zurück, die sich für das Gebietsschema des Benutzers eignen. Beispiel: In den USA gibt "{0:0.00}" den Wert "1.23" zurück, in Europa dagegen "1,23". Alternativ können Sie die Maskierungsunterstützung verwenden, um das Gebietsschema explizit zu überschreiben und denselben Wert für alle Benutzer auszugeben. Beispiel: "#\,###\,##0" formatiert eine Zahl unabhängig von der Gebietsschemaeinstellung in allen Regionen mit Kommas als Tausendertrennzeichen.