Danke für das Feedback

Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)

Variablen

Variablen enthalten Werte, die sich während der Ausführung der Erweiterung ändern können. Aufgrund der dynamischen Eingabe kann jede Variable Werte jedes Typs enthalten. Es gibt keine Typdeklarationen für Variablen. Stattdessen wird der Typ einer Variablen zur Laufzeit bestimmt. Tatsächlich kann sich der Typ des Werts einer Variablen während der Ausführung ändern, obwohl dies keine empfohlene Vorgehensweise ist. Eine Variable hat anfänglich den Wert nil.

Variablennamen sind Bezeichner, also Zeichenfolgen aus Buchstaben, Ziffern und Unterstrichen, die nicht in einer Ziffer beginnen. Beispiele: Header, combined_headers.

Globale Variablen

In Lua sind Variablen, die nicht anderweitig deklariert werden, global innerhalb des Programms. Globale Variablen sind jedoch in Richtlinienerweiterungsfunktionen nicht zulässig, da es mehrere Paketmodule gibt, in denen eine Funktion ausgeführt werden kann und jede Packet Engine über einen eigenen Speicher verfügt.

Wenn Sie eine globale Variable in Ihrer Erweiterung verwenden, erhalten Sie einen Laufzeitfehler: Versuchen Sie, eine in /var/log/ns.loggemeldete globale Variable zu aktualisieren oder zu erstellen.

Tippfehler in Variablennamen sind ein potenzielles Problem, da die Variable mit dem Tippfehler als eine andere globale Variable interpretiert wird und keinen Syntaxfehler verursacht wie in Sprache wie C oder Java. Wie oben erwähnt, erhalten Sie stattdessen einen Laufzeitfehler.

Lokale Variablen

Eine Variable kann als lokal für einen Anweisungsblock deklariert werden, z. B. eine Funktion. Dies geschieht durch den lokalen Variablennamen. Die Variable wird auf den Block beschränkt, dh sie existiert nur innerhalb des Blocks. Die lokale Deklaration kann der Variablen optional einen Wert zuweisen.

Beispiele:

local headers = {} local combined_headers = {}

Die offizielle Version dieses Inhalts ist auf Englisch. Für den einfachen Einstieg wird Teil des Inhalts der Cloud Software Group Dokumentation maschinell übersetzt. Cloud Software Group hat keine Kontrolle über maschinell übersetzte Inhalte, die Fehler, Ungenauigkeiten oder eine ungeeignete Sprache enthalten können. Es wird keine Garantie, weder ausdrücklich noch stillschweigend, für die Genauigkeit, Zuverlässigkeit, Eignung oder Richtigkeit von Übersetzungen aus dem englischen Original in eine andere Sprache oder für die Konformität Ihres Cloud Software Group Produkts oder Ihres Diensts mit maschinell übersetzten Inhalten gegeben, und jegliche Garantie, die im Rahmen der anwendbaren Endbenutzer-Lizenzvereinbarung oder der Vertragsbedingungen oder einer anderen Vereinbarung mit Cloud Software Group gegeben wird, dass das Produkt oder den Dienst mit der Dokumentation übereinstimmt, gilt nicht in dem Umfang, in dem diese Dokumentation maschinell übersetzt wurde. Cloud Software Group kann nicht für Schäden oder Probleme verantwortlich gemacht werden, die durch die Verwendung maschinell übersetzter Inhalte entstehen können.
Variablen