Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core für Entwickler > agorum core JavaScript-API
Diese JavaScript-Bibliothek common/version bietet Funktionen und Konstanten zum Ermitteln der installierten agorum core Version sowie zum Vergleichen beliebiger Versionsnummern (z. B. um in einem Skript unterschiedliche Codepfade für verschiedene agorum core Versionen umzusetzen).
Die Bibliothek kann Versionsnummern mit einer beliebigen Anzahl an Segmenten (z. B. 9.0, 11.15.0, 11.15.0.3) verarbeiten. Segmente müssen durch einen Punkt (.) getrennt sein; andere Trennzeichen (z. B. -, _) werden nicht als Segment-Trenner erkannt. Fehlende Segmente werden als 0 interpretiert, sodass '9.0' und '9.0.0' als gleichwertig gelten.
Binden Sie die Bibliothek stets am Anfang eines Skripts ein:
let version = require('common/version');
Folgende Konstanten stellt die Bibliothek bereit:
| Konstante | Typ | Beschreibung |
|---|---|---|
version.SYSTEM |
string | Die aktuell installierte agorum core Version, reduziert auf höchstens die ersten drei Segmente (z. B. '11.15.0'). Enthält die Ausgangsversion weniger Segmente, wird nicht mit Nullen aufgefüllt. Nutzen Sie diese Konstante, um im Skript die installierte Version abzufragen oder gegen eine Zielversion zu vergleichen. |
version.PRO |
boolean | Gibt an, ob agorum core pro auf dem System installiert ist (true) oder nicht (false). |
Beispiel:
let version = require('common/version');
console.log('Installierte agorum core Version: ' + version.SYSTEM);
console.log('Ist agorum core pro installiert? ' + version.PRO);
Vergleicht zwei Versionsnummern segmentweise und liefert das Vergleichsergebnis als Zahl zurück. Versionen können eine beliebige Anzahl an Segmenten enthalten. Unterscheiden sich die Versionen in der Länge, werden fehlende Segmente als 0 behandelt ('9.0' ist damit gleich '9.0.0'). Nicht-numerische Segmente werden ebenfalls als 0 gewertet.
Syntax
let result = version.compare(a, b);
| Parameter | Beschreibung | Pflicht | Standard |
|---|---|---|---|
a (string) |
Erste Versionsnummer als String, deren Segmente durch einen Punkt (.) getrennt sind, z. B. '9.0.0' oder '11.15.0'. |
ja | – |
b (string) |
Zweite Versionsnummer als String, deren Segmente durch einen Punkt (.) getrennt sind, z. B. '9.0.0' oder '11.15.0'. |
ja | – |
Rückgabewerte
Die Funktion liefert eine Zahl zurück:
| Wert | Bedeutung |
|---|---|
-1 |
a ist kleiner als b |
0 |
a und b sind gleich |
1 |
a ist größer als b |
Beispiele
Zwei Versionen direkt vergleichen:
let version = require('common/version');
version.compare('11.15.0', '11.14.0'); // 1 (11.15.0 ist neuer)
version.compare('11.14.0', '11.15.0'); // -1 (11.14.0 ist älter)
version.compare('11.15.0', '11.15.0'); // 0 (identisch)
Versionen unterschiedlicher Länge vergleichen:
Fehlende Segmente werden als 0 angenommen:
let version = require('common/version');
version.compare('9.0', '9.0.0'); // 0 (fehlende Segmente = 0)
version.compare('11.15', '11.15.0.3'); // -1 (die längere Variante ist größer)
Prüfung gegen eine Mindestversion des Systems:
Ein typischer Anwendungsfall ist die Prüfung, ob das aktuelle System eine bestimmte Mindestversion erreicht, bevor ein Feature genutzt wird:
let version = require('common/version');
if (version.compare(version.SYSTEM, '11.15.0') >= 0) {
// Code, der eine Funktion nutzt, die es erst ab agorum core 11.15.0 gibt
console.log('Neues Feature verfügbar');
} else {
// Fallback für ältere agorum core Versionen
console.log('Fallback für ältere Version');
}
Kombination mit version.PRO:
let version = require('common/version');
if (version.PRO && version.compare(version.SYSTEM, '11.15.0') >= 0) {
// pro-Feature, das eine Mindestversion voraussetzt
}
Hinweise
.) getrennt sein. Andere Trennzeichen wie -, _ oder / werden nicht als Segment-Trenner erkannt und führen zu einem unerwarteten Vergleichsergebnis.'3-2040' wird als 3 interpretiert. Vollständig nicht-numerische Segmente werden als 0 gewertet.version.SYSTEM liefert höchstens die ersten drei Segmente der agorum core Version. Exceptions
Die Funktion compare(a, b) kann eine Exception auslösen, insbesondere wenn:
a oder b null oder undefined sind.a oder b keinen String und keinen Wert liefern, auf dem split('.') aufgerufen werden kann.