(Info:) (Update:) Der zweite Artikel »Javascript Variablen für Illustrator 2022« erklärt Ihnen die Grundlagen rund um Variablen, einem wichtigen Konzept in jeder Programmiersprache. Dabei sind diese in Javascript einfach zu verstehen und zu verwenden. Dieser Artikel deckt auch das Verhalten älterer Versionen von Adobe Illustrator ab.
(Tipp:) Wenn Sie noch nicht mit Javascript vertraut sind, dann lesen Sie zuerst die Artikel »Illustrator mit Javascript automatisieren«.
(Hilfe:) Sie wollen oder können nicht selbst programmieren? Sie brauchen kurzfristig ein Javascript für eine Automatisierung für ein aktuelles Problem in Illustrator oder einem anderen Adobe Programm? Dann helfe ich Ihnen gerne als JavaScript-Entwickler mit meiner jahrzehntelang Programiererfahrung.
Schreiben Sie mir einfach und unverbindlich per Kontaktformular.
Adobe ExtendScript
Das Scripting (Programmierung) in Adobe Illustrator basiert auf Adobe ExtendScript, eine Abart von ECMAScript 3, kurz ES3, und ist somit ein Dialekt von Javascript. Die Dateiendung eines Adobe ExtendScript ist ».jsx«. Trotzdem spricht man auch bei den Adobe Programmen von Javascripts. Javascripts haben übrigens die Endung ».js«.
Inhaltsverzeichnis
Variablen in der Programmierung
In der Programmierung ist eine Variable ein Behälter für einen bestimmten Wert. Im Quelltext, dem Programm in Klarschrift, bezeichnet ein Name die Variable. Im laufenden Programm steht der Inhalt (Wert) der Variable an einer bestimmten Speicherstelle im Computer. Es gibt verschiedene Arten von Variablen, die wichtigsten sind:
- Der Konstante kann ein Wert nur einmal zu gewiesen werden und er bleibt während der Programmlaufzeit stets gleich.
- Im Gegensatz dazu ist eine echte Variable ein Platzhalter für einen Wert, der sich im Laufe der Zeit ändern kann.
- Eine Variable, die gleichzeitig mehr als nur einen Wert beinhaltet und deren Werte über fortlaufende Nummern abgefragt wird, wird Array genannt. Dies kann man sich wie einen Schrank mit nummerierten Schubladen vorstellen und in jeder Schublade liegt ein Wert.
- Im Gegensatz dazu gibt es auch Variablen, die aus mehreren Variable bestehen, die selbst wieder Namen haben. Diese werden Objekte genannt und kommen nur in objektorientierten Programmiersprachen vor, zu denen auch Javascript gehört.
Was es bei Variablen allgemein zu beachten gilt
Korrekter Name und Schreibweise
Die Programmiersprache gibt vor, dass Sie Variablen nur aus Worten bilden dürfen, die nicht Teil der Programmiersprache selbst sind. So dürfen Sie eine Variable nicht »if« nennen, wenn dies ein Schlüsselwort der Programmiersprache ist. Meist dürfen Variablen auch nicht mit Zahlen beginnen oder Sonderzeichen wie »-« (Minus) enthalten.
Es ist auch die korrekte Schreibweise (zum Beispiel Groß- und Kleinschreibung) der Variable im Quellcode zu achten: Die Variable »buch« ist nicht das gleiche wie »Buch«.
(Tipp:) Wählen Sie jede Variable mit einem sprechenden (selbsterklärenden) Namen, also besser »Kunde« als nur »k«, auch wenn Letztes schneller zu Tippen ist. Wenn Sie, nachdem Zeit vergangen ist, Ihren Quellcode wieder lesen oder ihn sich Dritte ansehen, ist »Kunde« besser als »k« zu verstehen.
(Tipp:) Noch besser ist, wenn Sie jeder Variable einen Buchstaben des Typs voranstellen, dann können Sie an jedem Punkt des Quellcodes seinen Typ erkennen, ohne lange zu suchen. Also »vKundeID« für eine Variable, den die Nummer des aktuellen Kundes enthalt und »cFiliale« für den konstanten Namen der Filiale.
Deklaration und Gültigkeit
Dem Programm muss eine Variable bekannt gemacht werden, dies nennt man auch Deklaration. Das ist notwendig, damit das Programm die Art (Typ), wie Konstante oder Variable, und ihren Gültigkeitsbereich kennt: Globale Variablen gelten im ganzen Programm, das heißt es kann auf ihren Wert jederzeit zugegriffen werden. Dagegen sind lokale Variablen nur in einem bestimmten Abschnitt bekannt.
(Achtung:) In Illustrator kann man lokale Variablen nur in Funktionen erstellen und benutzen. Sie müssen dafür mit dem Schlüsselwort »var« deklariert werden.
(Achtung:) Das Javascript-Schlüsselwort »let« zum deklarieren von Variablen kennt der Illustrator nicht.
Das war ganz knapp die Theorie über Variablen, jetzt geht es konkret um Javascript Variablen für Illustrator 2022.
Variable in Javascript
Konstanten
In Javascript werden Konstanten mit dem Schlüsselwort »const« deklariert (eingeführt). Machen Sie diese Deklaration außerhalb einer Funktion, dann ist es eine globale Konstante. Wohingegen eine Deklaration innerhalb einer Funktion, die Konstante nur innerhalb der Funktion bekannt ist.
const cVersion = 1.2; /* cVersion ist eine (globale) Konstante */
Variablen
Variablen werden entsprechend als globale Variable oder lokale Variable deklariert. Es gibt dafür zwei Schlüsselwörter in Javascript: »var« und »let«. Der Unterschied besteht darin, dass das neuere Schlüsselwort »let« der Variable einen eingeschränkten Gültigkeitsbereich (scope) zuweist. Diese gilt dann nämlich nur innerhalb einer { } – Klammerung.
var vName; /* Der Inhalt ist unbestimmt */
var vVorname = ""; /* Die Variable hat hier ein leeres Wort zum Inhalt */
var vAntwort = null; /* null steht für das absichtige Fehlen eines Inhalts */
var vFarbe = "Schwarz"; /* Die Variable enthält das Wort (String) "Schwarz" */
function fTest() { var vFehler = "Antwort"; return vFehler; } /* Die Variable vFehler ist nur innerhalb der Funktion bekannt, wenn 'var' vor der Variable steht. */
if (vAntwort == null) { vFehler = "Keine Antwort"; }
alert ("1: " + vFehler); // zeigt 'keine Antwort'
alert ("2: " + fTest()); // zeigt 'Antwort'
alert ("3: " + vFehler); // zeigt 'keine Antwort'
Array
Ein Array ist, wie oben beschrieben, eine Variable, die viele Werte enthalten kann. Die Deklaration kann bereits die Inhalte enthalten oder sie werden im Laufe des Programms hinzugefügt. Der Zugriffe in Javascript erfolgt über doppelte (!) eckige Klammern.
(Achtung:) In Illustrator sind Arrays nicht ganz sauber programmiert. In »Tipps und Tricks zu Javascript in Adobe Illustrator 2022« erfahren Sie mehr.
var aUnit = ["inch", "mm", "cm"]; /* Array mit drei Werten */
alert (aUnit[[1]]); /* Gibt "mm" aus, da ab 0 gezählt wird! */
Fazit
So, das war die sehr knappe Vorstellung von Variablen in Javascript für Illustrator 2022.
Vorschau
Im nächsten Beitrag »Javascript Schleifenoptimierung für Illustrator 2022« lernen Sie das wichtige Konzept der Schleifen kennen und welche die beste Wahl für Adobe Illustrator 2022 oder frühere Versionen ist.
ENDE
(Hilfe:) Wenn Sie eine Funktion in (AI:), (PS:), (IC:), (ID:) oder (FM:) benötigen, jedoch nicht selbst programmieren, dann sprechen Sie mich an. Ich übernehme gerne kleine Aufträge: zum Kontaktformular.