Symbolische Operatoren sind Zeichen, die festlegen, auf welche Weise die Werte in einem Ausdruck miteinander kombiniert, verglichen oder geändert werden.
| | Berechnung |
| | + | Addition | Fügt numerische Ausdrücke hinzu. |
| | -- | Dekrement | Subtrahiert 1 vom Operanden. |
| | / | Division | Dividiert expression1 durch expression2. |
| | ++ | Inkrement | Addiert 1 zu einem Ausdruck. |
| | % | Modulo | Berechnet den Rest einer Division von expression1 geteilt durch expression2. |
| | * | Multiplikation | Multipliziert zwei numerische Ausdrücke. |
| | - | Subtraktion | Wird bei Negationen oder Subtraktionen verwendet. |
| | Zusammengesetzte arithmetische Zuweisung |
| | += | Additionszuweisung | Weist expression1 den Wert von expression1 + expression2 zu. |
| | /= | Divisionszuweisung | Weist expression1 den Wert von expression1 / expression2 zu. |
| | %= | Modulo-Zuweisung | Weist expression1 den Wert von expression1 % expression2 zu. |
| | *= | Multiplikationszuweisung | Weist expression1 den Wert von expression1 * expression2 zu. |
| | -= | Subtraktionszuweisung | Weist expression1 den Wert von expression1 - expression2 zu. |
| | Zuweisung |
| | = | Zuweisung | Weist den Wert von expression2 (dem rechten Operanden) der Variablen, dem Array-Element oder der Eigenschaft in expression1 zu. |
| | Bitweise |
| | & | bitweises AND | Wandelt expression1 und expression2 in vorzeichenlose 32-Bit-Ganzzahlen um und führt eine Boolean AND-Operation an jedem einzelnen Bit der ganzzahligen Parameter aus. |
| | << | bitweise Linksverschiebung | Wandelt expression1 und shiftCount in 32-Bit-Ganzzahlen um und verschiebt alle Bits in expression1 um die Anzahl der Stellen nach links, die sich aus der ganzzahligen Umwandlung von shiftCount ergibt. |
| | ~ | bitweises NOT | Wandelt expression in eine vorzeichenbehaftete 32-Bit-Ganzzahl um und bildet dann das bitweise Einerkomplement dazu. |
| | | | bitweises OR | Wandelt expression1 und expression2 in vorzeichenlose 32-Bit-Ganzzahlen um und platziert eine 1 an jeder Bitposition, an der die entsprechenden Bits in expression1 oder expression2 1 sind. |
| | >> | bitweise Rechtsverschiebung | Wandelt expression und shiftCount in 32-Bit-Ganzzahlen um und verschiebt alle Bits in expression um die Anzahl der Stellen nach links, die sich aus der ganzzahligen Umwandlung von shiftCount ergibt. |
| | >>> | bitweise vorzeichenlose Rechtsverschiebung | Entspricht dem Operator für bitweise Verschiebung nach rechts (>>), bewahrt jedoch nicht das Vorzeichen des ursprünglichen Ausdrucks, da die Bits auf der linken Seite stets mit 0 aufgefüllt werden. |
| | ^ | bitweises XOR | Wandelt expression1 und expression2 in vorzeichenlose 32-Bit-Ganzzahlen um und platziert eine 1 an jeder Bit-Position, an der die entsprechenden Bits in expression1 oder expression2, jedoch nicht in beiden, 1 sind. |
| | Bitweise zusammengesetzte Zuweisung |
| | &= | bitweise AND-Zuweisung | Weist expression1 den Wert von expression1 & expression2 zu. |
| | <<= | bitweise Linksverschiebung und Zuweisung | Dieser Operator führt eine bitweise Verschiebung nach links (<<=) durch und speichert den Inhalt als Ergebnis in expression1. |
| | |= | bitweise OR-Zuweisung | Weist expression1 den Wert von expression1 | expression2 zu. |
| | >>= | bitweise Rechtsverschiebung und Zuweisung | Dieser Operator führt eine bitweise Verschiebung nach rechts durch und speichert das Ergebnis in expression. |
| | >>>= | bitweise vorzeichenlose Rechtsverschiebung und Zuweisung | Dieser Operator führt eine vorzeichenlose bitweise Verschiebung nach rechts durch und speichert das Ergebnis in expression. |
| | ^= | bitweise XOR-Zuweisung | Weist expression1 den Wert von expression1 ^ expression2 zu. |
| | Kommentar |
| | /*..*/ | Kommentarblock-Trennzeichen | Begrenzt mindestens eine Skriptkommentarzeile. |
| | // | Kommentarzeilen-Trennzeichen | Kennzeichnet den Beginn eines Skriptkommentars. |
| | Vergleich |
| | == | Gleichheit | Prüft zwei Ausdrücke auf Gleichheit. |
| | > | größer als | Vergleicht zwei Ausdrücke und stellt fest, ob expression1 größer als expression2 ist. Ist dies der Fall, lautet das Ergebnis true. |
| | >= | größer oder gleich | Vergleicht zwei Ausdrücke und stellt fest, ob expression1 größer oder gleich expression2 ist (true) oder ob expression1 kleiner als expression2 (false). |
| | != | Ungleichheit | Prüft auf das genaue Gegenteil des Gleichheits-Operators (==). |
| | < | kleiner als | Vergleicht zwei Ausdrücke und stellt fest, ob expression1 kleiner ist als expression2. Ist dies der Fall, lautet das Ergebnis true. |
| | <= | kleiner oder gleich | Vergleicht zwei Ausdrücke und stellt fest, ob expression1 kleiner oder gleich expression2 ist. Ist dies der Fall, lautet das Ergebnis true. |
| | === | strikte Gleichheit | Überprüft zwei Ausdrücke auf Gleichheit, führt aber keine automatische Datenkonvertierung durch. |
| | !== | strikte Ungleichheit | Prüft auf das genaue Gegenteil des strikten Gleichheits-Operators (===). |
| | Logisch |
| | && | logisches AND | Gibt expression1 zurück, wenn es false ist oder in false umgewandelt werden kann, andernfalls expression2. |
| | &&= | logische AND-Zuweisung | Weist expression1 den Wert von expression1 && expression2 zu. |
| | ! | logisches NOT | Kehrt den Boolean-Wert einer Variablen oder eines Ausdrucks um. |
| | || | logisches OR | Gibt expression1 zurück, wenn es true ist oder in true umgewandelt werden kann, andernfalls expression2. |
| | ||= | logische OR-Zuweisung | Weist expression1 den Wert von expression1 || expression2 zu. |
| | Sonstiges |
| | [] | Array-Zugriff | Initialisiert ein neues Array oder ein neues multidimensionales Array mit den angegebenen Elementen (a0 usw.) bzw. greift auf Elemente in einem Array zu. |
| | | as | Wertet aus, ob ein vom ersten Operanden angegebener Ausdruck ein Mitglied des Datentyps ist, der vom zweiten Operanden angegeben wird. |
| | , | Komma | Wertet expression1 aus, dann expression2 usw. |
| | ?: | Bedingung | Wertet expression1 aus. Wenn der Wert von expression1 gleich true ist, entspricht das Ergebnis dem Wert von expression2; andernfalls ist das Ergebnis der Wert von expression3. |
| | | delete | Verwirft die durch reference angegebene Objekteigenschaft. Das Ergebnis ist true, wenn die Eigenschaft nach der vollständigen Ausführung des Vorgangs nicht mehr vorhanden ist, anderenfalls false. |
| | . | Punkt | Dieser Operator greift auf die Variablen und Methoden einer Klasse zu, ruft Objekteigenschaften ab bzw. setzt sie und begrenzt importierte Pakete und Klassen. |
| | | in | Wertet aus, ob eine Eigenschaft ein Teil eines bestimmten Objekts ist. |
| | | instanceof | Wertet aus, ob die Prototypkette eines Ausdrucks das Prototypobjekt für function enthält. |
| | | is | Wertet aus, ob ein Objekt mit einem bestimmten Datentyp, einer Klasse oder Schnittstelle kompatibel ist. |
| | :: | Namensqualifizierer | Identifiziert den Namespace einer Eigenschaft, einer Methode, einer XML-Eigenschaft oder eines XML-Attributs. |
| | | new | Dieser Operator instanziiert eine Klasseninstanz. |
| | {} | Objektinitialisierung | Erstellt ein neues Objekt und initialisiert es mit den angegebenen Eigenschaftspaaren aus name und value. |
| | () | Klammern | Führt eine Gruppierungsoperation mit mindestens einem Parameter bzw. eine sequentielle Auswertung von Ausdrücken durch oder umgibt mindestens einen Parameter und übergibt diesen als Argument an eine Funktion, die vor den runden Klammern steht. |
| | / | Trennzeichen für reguläre Ausdrücke | Wenn Sie diesen Operator vor und nach einem String eingeben, kennzeichnen Sie, dass es sich dabei um einen Literalwert handelt, der als ein regulärer Ausdruck (RegExp) betrachtet wird und nicht um einen String, eine Variable oder ein anderes ActionScript-Element. |
| | : | Typ | Dieser Operator wird für die Zuweisung eines Datentyps verwendet. Er gibt den Variablentyp, den Rückgabetyp einer Funktion oder den Parametertyp einer Funktion an. |
| | | typeof | Wertet expression aus und gibt eine Zeichenfolge zurück, die den Datentyp des Ausdrucks angibt. |
| | | void | Wertet einen Ausdruck aus und verwirft dann dessen Wert und gibt undefined zurück. |
| | String |
| | + | Verkettung | Verkettet (verbindet) Strings. |
| | += | Verkettungszuweisung | Weist expression1 den Wert von expression1 + expression2 zu. |
| | " | Stringtrennzeichen | Wenn Sie diesen Operator vor und nach einem String eingeben, kennzeichnen Sie, dass es sich dabei um einen Literalwert, d. h. um einen String, und nicht um eine Variable, einen numerischen Wert oder ein anderes ActionScript-Element handelt. |
| | XML |
| | @ | Attributbezeichner | Kennzeichnet die Attribute eines XML- oder XMLList-Objekts. |
| | { } | geschweifte Klammern (XML) | Wertet einen Ausdruck aus, der in einem XML- oder XMLList-Initialisierer verwendet wird. |
| | [ ] | eckige Klammern (XML) | Greift auf eine Eigenschaft oder ein Attribut eines XML- oder XMLList-Objekts zu. |
| | + | Verkettung (XMLList) | Verkettet (verbindet) XML- oder XMLList-Werte zu einem XMLList-Objekt. |
| | += | Verkettungszuweisung (XMLList) | Weist expression1, also einem XMLList-Objekt, den Wert von expression1 + expression2 zu. |
| | | delete (XML) | Löscht die XML-Elemente oder -Attribute, die durch reference angegeben werden. |
| | .. | Nachfolger-Accessor | Navigiert zu den Nachfolgerelementen eines XML- oder XMLList-Objekts oder findet (in Verbindung mit dem Operator "@") die übereinstimmenden Attribute der Nachfolger. |
| | . | Punkt (XML) | Navigiert zu den untergeordneten Elementen eines XML- oder XMLList-Objekts oder gibt (in Verbindung mit dem Operator "@") die Attribute eines XML- oder XMLList-Objekts zurück. |
| | ( ) | Klammern (XML) | Wertet einen Ausdruck in einem E4X XML-Konstrukt aus. |
| | < > | XML-Literal-Tagtrennzeichen | Definiert ein XML-Tag in einem XML-Literal. |
Verwendung
| expression1 + expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Fügt numerische Ausdrücke hinzu. Wenn beide Ausdrücke Ganzzahlen sind, ist die Summe eine Ganzzahl. Wenn ein oder beide Ausdrücke Gleitkommazahlen sind, ist die Summe eine Gleitkommazahl.
Wenn einer der Ausdrücke ein String ist, werden alle Ausdrücke in Strings umgewandelt und verkettet anstatt summiert. Andernfalls, wenn ein Ausdruck keine Zahl ist, wird er von Flash® Player ihn in eine Zahl konvertiert.
Operanden
| expression1:Number — Ein zu addierender Wert.
|
| expression2:Number — Ein zu addierender Wert.
|
Ergebnis
| Number — Eine Ganzzahl oder eine Gleitkommazahl. |
Beispiel Verwendung von Beispielen Die folgende Anweisung addiert die Ganzzahlen 2 und 3:
Die folgende Anweisung addiert die Gleitkommazahlen 2.5 und 3.25:
trace(2.5 + 3.25); // 5.75
Dieses Beispiel zeigt, dass wenn einer der Ausdrücke ein String ist, alle Ausdrücke in Strings umgewandelt und verkettet werden.
trace("Number " + 8 + 0); // Number 80
Mit dynamischen und Eingabetextfeldern verknüpfte Variablen sind Strings. In dem folgenden Beispiel ist die Variable deposit ein Eingabetextfeld auf der Bühne. Wenn ein Benutzer einen Einzahlungsbetrag eingibt, versucht das Skript, den Wert von deposit zum Wert oldBalance zu addieren. Da deposit den Datentyp String hat, verkettet das Skript die Variablenwerte (d. h. es kombiniert sie zu einem einzigen String), anstatt sie zu addieren.
var oldBalance:Number = 1345.23;
var currentBalance = deposit_txt.text + oldBalance;
trace(currentBalance);
Wenn ein Benutzer beispielsweise 475 in das Einzahlungstextfeld eingibt, sendet die Anweisung trace() den Wert 4751345.23 an das Bedienfeld "Ausgabe". Um dieses Problem zu beheben, verwenden Sie die Funktion Number(), um den String in eine Zahl umzuwandeln. Dies wird in dem folgenden Beispiel veranschaulicht:
var oldBalance:Number = 1345.23;
var currentBalance:Number = Number(deposit_txt.text) + oldBalance;
trace(currentBalance);
Siehe auch
Verwendung
| expression1 += expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 + expression2 zu. Die folgenden Anweisungen sind beispielsweise gleichwertig:
x += y;
x = x + y;
Alle Regeln des Additions-Operators (+) gelten auch für den Additionszuweisungs-Operator (
+=).
Operanden
| expression1:Number — Eine Zahl.
|
| expression2:Number — Eine Zahl.
|
Ergebnis
| Number — Das Ergebnis der Addition. |
Beispiel Verwendung von Beispielen Das folgende Beispiel veranschaulicht die numerische Verwendung des Additionszuweisungs-Operators (
+=):
var x:Number = 5;
var y:Number = 10;
x += y;
trace(x); // 15
Siehe auch
Verwendung
| myArray = [a0, a1,...aN]
myArray[i] = value
myObject[propertyName]
|
| Player-Version : | Flash Player 9 |
Initialisiert ein neues Array oder ein neues multidimensionales Array mit den angegebenen Elementen (a0 usw.) bzw. greift auf Elemente in einem Array zu. Mit dem Array-Zugriffs-Operator können Namen von Instanzen, Variablen und Objekten dynamisch gesetzt und abgerufen werden. Sie können den Operator auch zum Zugriff auf Objekteigenschaften verwenden.
Verwendung 1: Ein Array ist ein Objekt, dessen Eigenschaften, so genannte Elemente, durch eine Zahl (den so genannten Index) angegeben werden. Beim Erstellen eines Arrays umgeben Sie die Elemente mit Array-Zugriffsoperatoren ([], also eckigen Klammern). Ein Array kann verschiedene Arten von Elementen enthalten. Das folgende Array mit der Bezeichnung employee weist beispielsweise drei Elemente auf: Das erste ist eine Zahl, das zweite und dritte sind Zeichenfolgen in Anführungszeichen ("):
var employee:Array = [15, "Barbara", "Jay"];
Sie können eckige Klammern ineinander verschachteln, um mehrdimensionale Arrays zu simulieren. Hierbei stehen bis zu 256 Verschachtelungsebenen zur Verfügung. Der folgende Code erstellt ein Array mit der Bezeichnung
ticTacToe mit drei Elementen. Jedes Element ist ebenfalls ein Array mit drei Elementen:
var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
/* Select Debug > List Variables in test mode
to see a list of the array elements.*/
Verwendung 2: Sie können den Index eines jeden Elements mit eckigen Klammern ([]) umgeben, damit Sie direkt darauf zugreifen können. Auf diese Weise können Sie ein neues Element zu einem Array hinzufügen oder den Wert eines vorhandenen Elements ändern oder abrufen. Der erste Index eines Arrays lautet immer 0, wie aus folgendem Beispiel hervorgeht:
var my_array:Array = new Array();
my_array[0] = 15;
my_array[1] = "Hello";
my_array[2] = true;
Mithilfe von eckigen Klammern können Sie wie folgt ein viertes Element hinzufügen:
Sie können eckige Klammern auch verwenden, um auf ein Element in einem mehrdimensionalen Array zuzugreifen. Der erste Satz Klammern gibt das Element im ursprünglichen Array an, der zweite Satz das Element im verschachtelten Array. Die folgende
trace()-Anweisung findet das dritte Element (Index 2) des zweiten Arrays (Index 1).
var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
trace(ticTacToe[1][2]); // 6
Verwendung 3: Sie können den Array-Zugriffsoperator verwenden, um Werte für Objekteigenschaften dynamisch einzustellen und abzurufen.
var obj:Object = new Object();
obj.prop1 = "foo";
trace(obj["prop" + 1]); // foo
obj.prop2 = "bar";
for (j in obj) {
trace(obj[j]);
}
/* Output of for loop:
foo
bar */
Operanden
| myArray:Object — Der Name eines Arrays.
|
| a0, a1,...aN:Object — Die Elemente in einem Array. Jeder beliebige native Typ bzw. jede Objektinstanz, einschließlich verschachtelter Arrays.
|
| i:Number — Ein ganzzahliger Index größer oder gleich 0.
|
| myObject:Object — Der Name eines Objekts.
|
| propertyName:String — Ein String mit dem Namen einer Eigenschaft des Objekts.
|
Ergebnis
| Object — Verwendung 1: Eine Referenz auf ein Array. Verwendung 2: Ein Wert aus dem Array; entweder ein nativer Typ oder eine Objektinstanz (einschließlich einer Arrayinstanz). Verwendung 3: Eine Eigenschaft des Objekts; entweder ein nativer Typ oder eine Objektinstanz (einschließlich einer Arrayinstanz). |
Beispiel Verwendung von Beispielen Das folgende Beispiel veranschaulicht zwei Möglichkeiten zum Erstellen eines neuen leeren Array-Objekts. In der ersten Zeile werden eckige Klammern verwendet:
var my_array:Array = [];
var my_array:Array = new Array();
Der folgende Beispielcode erstellt ein Array mit der Bezeichnung employee_array mit drei Elementen und ändert das dritte Element im Array:
var employee_array = ["Barbara", "George", "Mary"];
trace(employee_array); // Barbara,George,Mary
employee_array[2] = "Sam";
trace(employee_array); // Barbara,George,Sam
In dem folgenden Beispiel wird der Ausdruck in eckigen Klammern ausgewertet und das Ergebnis als Name der Variablen verwendet, die vom
obj-Objekts abgerufen wird:
var obj:Object = new Object();
obj.prop1 = "foo";
obj.prop2 = "bar";
for (var i:int = 1;i < 3;i++) {
trace(obj["prop"+i]);
}
/* Output of for loop:
foo
bar */
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet aus, ob ein vom ersten Operanden angegebener Ausdruck ein Mitglied des Datentyps ist, der vom zweiten Operanden angegeben wird. Ist der erste Operand ein Mitglied des Datentyps, ist das Ergebnis der erste Operand. Andernfalls ist das Ergebnis der Wert null.
Der für den zweiten Operanden verwendete Ausdruck muss sich als Datentyp auswerten lassen.
Operanden
| expression:* — Der Wert, der anhand des angegebenen Datentyps geprüft wird.
|
| datatype:Class — Der Datentyp, der zum Auswerten des Operanden expression verwendet wird. Der Spezialtyp *, also nicht typisiert, kann nicht verwendet werden.
|
Ergebnis
| Object — Das Ergebnis ist expression, wenn expression ein Mitglied des in datatype angegebenen Datentyps ist. Andernfalls ist das Ergebnis der Wert null. |
Beispiel Verwendung von Beispielen Das folgende Codebeispiel erstellt ein einfaches Array mit der Bezeichnung
myArray und verwendet den Operator
as mit verschiedenen Datentypen.
public var myArray:Array = ["one", "two", "three"];
trace(myArray as Array); // one,two,three
trace(myArray as Number); // null
trace(myArray as int); // null
Siehe auch
Verwendung
| expression1 = expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist den Wert von expression2 (dem rechten Operanden) der Variablen, dem Array-Element oder der Eigenschaft in expression1 zu. Die Zuweisung kann entweder durch einen Wert oder durch eine Referenz erfolgen. Bei einer Zuweisung durch einen Wert wird der tatsächliche Wert von expression2 kopiert und in expression1 gespeichert. Die Zuweisung durch einen Wert wird dann verwendet, wenn es sich bei expression2 um einen Grundwert handelt. Dies bedeutet, der Datentyp ist entweder Boolean, Number, int, uint oder String. Bei einer Zuweisung durch eine Referenz wird die Referenz auf expression2 in expression1 gespeichert. Die Zuweisung über einen Verweis wird in der Regel zusammen mit dem Operator new verwendet. Der Operator new erstellt im Speicher ein Objekt und weist einer Variablen einen Verweis auf diese Speicherposition zu.
Hinweis: In ActionScript 3.0 sind alle Werte (einschließlich Grundwerte) Objekte, und jede Zuweisung erfolgt über einen Verweis. Grundobjekte haben jedoch spezielle Operatoren, die es ihnen erlauben, sich so zu verhalten, als wenn sie durch einen Wert zugewiesen wären.
Operanden
| expression1:* — Eine Variable, ein Array-Element oder eine Objekteigenschaft.
|
| expression2:* — Ein Wert beliebigen Typs.
|
Ergebnis
| Object — Der zugewiesene Wert, d. h. expression2. |
Beispiel Verwendung von Beispielen Im folgenden Beispiel wird der Variablen
z mithilfe der Wertzuweisung der Wert 5 zugewiesen.
Im folgenden Beispiel wird der Wert "
hello" mithilfe der Wertzuweisung der Variablen
z zugewiesen.
var x:String;
x = "hello";
In dem folgenden Beispiel wird mithilfe der Zuweisung über einen Verweis die Variable
moonsOfJupiter erstellt, die einen Verweis auf ein neu erstelltes Array-Objekt enthält. {\f2000 Anschließend wird mithilfe der Wertzuweisung dem ersten Element des durch die Variable }
moonsOfJupiter{\f2000 verwiesenen Arrays der Wert }{\f1119 "}{\f2000 Callisto}{\f1119 " }{\f2000 zugewiesen.}
var moonsOfJupiter:Array = new Array();
moonsOfJupiter[0] = "Callisto";
In dem folgenden Beispiel wird mithilfe der Zuweisung über einen Verweis ein neues Objekt erstellt und dann der Variablen
mercury ein Verweis auf dieses Objekt zugewiesen. Anschließend wird der Eigenschaft
diameter des Objekts
mercury mithilfe der Wertzuweisung der Wert zugewiesen:
var mercury:Object = new Object();
mercury.diameter = 3030; // in miles
trace(mercury.diameter); // 3030
Das folgende Beispiel baut auf dem vorherigen auf. Es wird zunächst eine neue Variable,
merkur (das deutsche Wort für
mercury), erstellt und anschließend wird ihr der Wert von
mercury zugewiesen. Auf diese Weise werden zwei Variablen erstellt, die beide im Speicher das gleiche Objekt referenzieren, so dass Sie nun auf die Eigenschaften dieses Objekts mithilfe beider Variablen zugreifen können. Die Eigenschaft
diameter kann nun auch so geändert werden, dass sie anstelle von Meilen Kilometer verwendet:
var merkur:Object = mercury;
merkur.diameter = 4878; // in kilometers
trace(mercury.diameter); // 4878
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Kennzeichnet die Attribute eines XML- oder XMLList-Objekts. Beispielsweise kennzeichnet myXML.@id Attribute mit der Bezeichnung id für das XML-Objekt myXML. Die Zugriff auf Attribute können Sie auch die folgende Syntax verwenden: myXML.attribute("id"), myXML["@id"] und myXML.@["id"]. Die Syntax myXML.@id wird empfohlen. Um ein XMLList-Objekt aller Attributnamen zurückzugeben, verwenden Sie @*. Um ein Attribut mit einem Namen zurückzugeben, der einem in ActionScript reservierten Wort entspricht, verwenden Sie die Methode attribute() anstelle des Operators @.
Operanden
| attributeName:* — Der Name des Attributs.
|
Beispiel Verwendung von Beispielen Das erste Beispiel zeigt, wie der
@-Operator (at-Zeichen) verwendet wird, um ein Attribut eines Elements zu identifizieren:
var myXML:XML =
<item id = "42">
<catalogName>Presta tube</catalogName>
<price>3.99</price>
</item>;
trace(myXML.@id); // 42
In dem nächsten Beispiel werden alle Attributnamen zurückgegeben:
var xml:XML =<example id='123' color='blue'/>
var xml2:XMLList = xml.@*;
trace(xml2 is XMLList); // true
trace(xml2.length()); // 2
for (var i:int = 0; i < xml2.length(); i++)
{
trace(typeof(xml2[i])); // xml
trace(xml2[i].nodeKind()); // attribute
trace(xml2[i].name()); // id and color
}
In dem folgenden Beispiel wird ein Attribut mit einem Namen wiedergegeben, der einem in ActionScript reservierten Wort entspricht. Sie können die Syntax
xml.@class nicht verwenden, da
class ein reserviertes Schlüsselwort in ActionScript ist. Sie müssen die Syntax
xml.attribute("class") verwenden:
var xml:XML = <example class='123'/>
trace(xml.attribute("class"));
Siehe auch
Verwendung
| expression1 & expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wandelt expression1 und expression2 in vorzeichenlose 32-Bit-Ganzzahlen um und führt eine Boolean AND-Operation für jedes einzelne Bit der ganzzahligen Parameter aus. Gleitkommazahlen werden in Ganzzahlen umgewandelt. Dabei werden alle Nachkommastellen abgeschnitten. Das Ergebnis ist eine neue 32-Bit-Ganzzahl.
Eine positive Ganzzahl wird in einen vorzeichenlosen Hexadezimalwert mit einem Maximalwert von 4294967295 bzw. 0xFFFFFFFF umgewandelt. Ist die ursprüngliche Zahl größer, werden die höchstwertigen Stellen bei der Umwandlung abgeschnitten, sodass das Ergebnis weiterhin ein 32-Bit-Wert ist. Eine negative Zahl wird mithilfe der Zweierkomplement-Darstellung in einen vorzeichenlosen Hexadezimalwert von mindestens -2147483648 bzw. 0x800000000 konvertiert. Von einer kleineren Zahl wird das Zweierkomplement gebildet (mit höherer Genauigkeit), die höchstwertigen Stellen werden wiederum abgeschnitten.
Das Ergebnis wird als vorzeichenbehafteter 32-Bit-Zweierkomplementwert interpretiert, also handelt es sich bei diesem Wert um eine Ganzzahl zwischen -2147483648 und 2147483647.
Operanden
| expression1:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Der folgende Beispielcode für ein bitweises AND von 13 (binär 1101) und 11 (binär 1011) durch, indem die Bit-Darstellungen der Zahlen miteinander verglichen werden. Die resultierende Ganzzahl besteht aus einer Reihenfolge von Bits, von denen jedes nur dann auf 1 gesetzt wird, wenn die Bits beider Operanden an der gleichen Position 1 lauten.
var insert:Number = 13;
var update:Number = 11;
trace(insert & update); // 9 (or 1001 binary)
Das bitweise AND von 13 (binär 1101) und 11 (binär 1011) ergibt 9, weil nur die ersten und letzten Position in beiden Zahlen eine 1 aufweisen.
1101
& 1011
----
1001
Die folgenden Beispiele veranschaulichen das Verhalten bei der Umwandlung der Rückgabewerte:
trace(0xFFFFFFFF); // 4294967295
trace(0xFFFFFFFF & 0xFFFFFFFF); // -1
trace(0xFFFFFFFF & -1); // -1
trace(4294967295 & -1); // -1
trace(4294967295 & 4294967295); // -1
Siehe auch
Verwendung
| expression1 &= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 & expression2 zu. Beispielsweise sind die beiden folgenden Ausdrücke gleichwertig:
x &= y;
x = x & y;
Operanden
| expression1:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| int — Beim Wert von expression1 & expression2. |
Beispiel Verwendung von Beispielen Im folgenden Beispiel wird der Variablen
x der Wert 9 zugewiesen:
var x:Number = 15;
var y:Number = 9;
trace(x &= y); // 9
Siehe auch
Verwendung
| expression1 << shiftCount |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wandelt expression1 und shiftCount in 32-Bit-Ganzzahlen um und verschiebt alle Bits in expression1 um die Anzahl der Stellen nach links, die sich aus der ganzzahligen Umwandlung von shiftCount ergibt. Die als Ergebnis dieser Operation geleerten Bit-Positionen werden mit 0 aufgefüllt. Gleichzeitig werden nach links verschobene Bits abgeschnitten. Das Verschieben eines Werts um eine Position nach links entspricht einer Multiplikation mit 2.
Eine Gleitkommazahl wird in eine Ganzzahl umgewandelt. Dabei werden alle Nachkommastellen abgeschnitten. Eine positive Ganzzahl wird in einen vorzeichenlosen Hexadezimalwert mit einem Maximalwert von 4294967295 bzw. 0xFFFFFFFF umgewandelt. Ist die ursprüngliche Zahl größer, werden die höchstwertigen Stellen bei der Umwandlung abgeschnitten, sodass das Ergebnis weiterhin ein 32-Bit-Wert ist. Eine negative Zahl wird mithilfe der Zweierkomplement-Darstellung in einen vorzeichenlosen Hexadezimalwert von mindestens -2147483648 bzw. 0x800000000 konvertiert. Von einer kleineren Zahl wird das Zweierkomplement gebildet (mit höherer Genauigkeit), die höchstwertigen Stellen werden wiederum abgeschnitten.
Das Ergebnis wird als vorzeichenbehafteter 32-Bit-Zweierkomplementwert interpretiert, also handelt es sich bei diesem Wert um eine Ganzzahl zwischen -2147483648 und 2147483647.
Wenn das Ergebnis eine negative Ganzzahl ist, tritt ein Fehler zur Laufzeit auf, wenn Sie versuchen, das Ergebnis einer Variablen des Typs uint zuzuweisen. Obwohl ActionScript keinen Operator für eine "vorzeichenlose bitweise Verschiebung nach links" umfasst, können Sie den gleichen Effekt erreichen und den Laufzeitfehler vermeiden, indem Sie uint(expression1 << shiftCount) verwenden:
var num1:uint = 0xFF;
var num2:uint = uint(num1 << 24); // uint() prevents runtime error
Operanden
| expression1:Number — Eine Zahl oder ein Ausdruck, die bzw. der bitweise nach links verschoben werden soll.
|
| shiftCount:Number — Eine Zahl oder ein Ausdruck, die bzw. der in eine Ganzzahl von 0 bis 31 umgewandelt werden kann.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Im folgenden Beispiel wird die Ganzzahl 1 um 10 Bit nach links verschoben:
Das Ergebnis der bitweisen Verschiebung nach links ist 1024. Dies errechnet sich wie folgt: 1 dezimal ist gleich 1 binär, 1 binär um 10 Bits nach links verschoben ist 10000000000 binär, und 10000000000 binär ist 1024 dezimal.
00000000001 binary
<< 10 decimal
--------------
10000000000 binary equals 1024 decimal
Im folgenden Beispiel wird die Ganzzahl 7 um 8 Bit nach links verschoben:
Das Ergebnis der bitweisen Verschiebung nach links ist 1792. Dies errechnet sich wie folgt: 7 dezimal ist gleich 111 binär, 111 binär um 8 Bits nach links verschoben ist 11100000000 binär, und 11100000000 binär ist 1792 dezimal.
00000000111 binary
<< 8 decimal
--------------
11100000000 binary equals 1792 decimal
In der folgenden trace-Anweisung wird gezeigt, dass die Bits um drei Stellen nach links verschoben wurden:
// 1 binary == 0001
// 8 binary == 1000
trace(1 << 3); // 8
Siehe auch
Verwendung
| expression1 <<= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Dieser Operator führt eine bitweise Verschiebung nach links (<<=) durch und speichert den Inhalt als Ergebnis in expression1. Die folgenden beiden Ausdrücke sind gleichwertig:
A <<= B
A = (A << B)
Operanden
| expression1:Number — Eine Zahl oder ein Ausdruck, die bzw. der bitweise nach links verschoben werden soll.
|
| expression2:Number — Eine Zahl oder ein Ausdruck, die bzw. der in eine Ganzzahl von 0 bis 31 umgewandelt werden kann.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Im folgenden Beispiel werden alle Bits mithilfe des Operators für eine bitweise Verschiebung und Zuweisung (<<=) um eine Stelle nach links verschoben:
var x:Number = 4;
// Shift all bits one slot to the left.
x <<= 1;
trace(x); // 8
// 4 decimal = 0100 binary
// 8 decimal = 1000 binary
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wandelt expression in eine vorzeichenbehaftete 32-Bit-Ganzzahl um und bildet dann das bitweise Einerkomplement dazu. Das bedeutet, dass jedes 0-Bit im Ergebnis auf 1 gesetzt wird und jedes 1-Bit auf 0. Das Ergebnis ist eine 32-Bit-Ganzzahl mit Vorzeichen. Dieser Operator wird auch als Einerkomplement-Operator bzw. als bitweiser Komplement-Operator bezeichnet.
So wird der Hexadezimalwert 0x7777 mit der folgenden Binärzahl dargestellt:
0111011101110111
Die bitweise Negation dieses Hexadezimalwerts, ~0x7777, ist diese Binärzahl:
1000100010001000
In hexadezimaler Schreibweise wird daraus 0x8888. Aus diesem Grund hat ~0x7777 den Wert 0x8888.
Bitweise Operatoren werden am häufigsten zur Darstellung von Flag-Bits verwendet (Boolean-Werte, die jeweils aus 1 Bit bestehen).
Eine Gleitkommazahl wird in eine Ganzzahl umgewandelt. Dabei werden alle Nachkommastellen abgeschnitten. Eine positive Ganzzahl wird in einen vorzeichenlosen Hexadezimalwert mit einem Maximalwert von 4294967295 bzw. 0xFFFFFFFF umgewandelt. Ist die ursprüngliche Zahl größer, werden die höchstwertigen Stellen bei der Umwandlung abgeschnitten, sodass das Ergebnis weiterhin ein 32-Bit-Wert ist. Eine negative Zahl wird mithilfe der Zweierkomplement-Darstellung in einen vorzeichenlosen Hexadezimalwert von mindestens -2147483648 bzw. 0x800000000 konvertiert. Von einer kleineren Zahl wird das Zweierkomplement gebildet (mit höherer Genauigkeit), die höchstwertigen Stellen werden wiederum abgeschnitten.
Das Ergebnis wird als vorzeichenbehafteter 32-Bit-Zweierkomplementwert interpretiert, also handelt es sich bei diesem Wert um eine Ganzzahl zwischen -2147483648 und 2147483647.
Operanden
| expression:Number — Eine zu konvertierende Zahl.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Das folgende Beispiel veranschaulicht die Verwendung des bitweisen NOT-Operators (
~) bei Flag-Bits:
var ReadOnlyFlag:int = 0x0001; // defines bit 0 as the read-only flag
var flags:int = 0;
trace(flags);
/* To set the read-only flag in the flags variable,
the following code uses the bitwise OR:
*/
flags |= ReadOnlyFlag;
trace(flags);
/* To clear the read-only flag in the flags variable,
first construct a mask by using bitwise NOT on ReadOnlyFlag.
In the mask, every bit is a 1 except for the read-only flag.
Then, use bitwise AND with the mask to clear the read-only flag.
The following code constructs the mask and performs the bitwise AND:
*/
flags &= ~ReadOnlyFlag;
trace(flags);
// 0 1 0
Siehe auch
Verwendung
| expression1 | expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wandelt expression1 und expression2 in vorzeichenlose 32-Bit-Ganzzahlen um und platziert eine 1 an jeder Bitposition, an der die entsprechenden Bits in expression1 oder expression2 1 sind.
Eine Gleitkommazahl wird in eine Ganzzahl umgewandelt. Dabei werden alle Nachkommastellen abgeschnitten. Eine positive Ganzzahl wird in einen vorzeichenlosen Hexadezimalwert mit einem Maximalwert von 4294967295 bzw. 0xFFFFFFFF umgewandelt. Ist die ursprüngliche Zahl größer, werden die höchstwertigen Stellen bei der Umwandlung abgeschnitten, sodass das Ergebnis weiterhin ein 32-Bit-Wert ist. Eine negative Zahl wird mithilfe der Zweierkomplement-Darstellung in einen vorzeichenlosen Hexadezimalwert von mindestens -2147483648 bzw. 0x800000000 konvertiert. Von einer kleineren Zahl wird das Zweierkomplement gebildet (mit höherer Genauigkeit), die höchstwertigen Stellen werden wiederum abgeschnitten.
Das Ergebnis wird als vorzeichenbehafteter 32-Bit-Zweierkomplementwert interpretiert, also handelt es sich bei diesem Wert um eine Ganzzahl zwischen -2147483648 und 2147483647.
Operanden
| expression1:Number — Eine Zahl.
|
| expression2:Number — Eine Zahl.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Das folgende Beispiel stellt eine bitweise OR-Operation (
|) dar.
// 15 decimal = 1111 binary
var a:Number = 15;
// 9 decimal = 1001 binary
var b:Number = 9;
// 1111 | 1001 = 1111
trace(a | b); // returns 15 decimal (1111 binary)
Das einfache
|-Zeichen (bitweises OR) sollte dabei nicht mit dem doppelten
|| (logisches OR) verwechselt werden.
Siehe auch
Verwendung
| expression1 |= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 | expression2 zu. Die beiden folgenden Anweisungen sind beispielsweise gleichwertig:
x |= y;
x = x | y;
Operanden
| expression1:Number — Eine zu konvertierende Zahl.
|
| expression2:Number — Eine zu konvertierende Zahl.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Im folgenden Beispiel wird eine bitweise OR-Zuweisung (
|=) verwendet:
// 15 decimal = 1111 binary
var a:Number = 15;
// 9 decimal = 1001 binary
var b:Number = 9;
// 1111 |= 1001 = 1111
trace(a |= b); // returns 15 decimal (1111 binary)
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wandelt expression und shiftCount in 32-Bit-Ganzzahlen um und verschiebt alle Bits in expression um die Anzahl der Stellen nach links, die sich aus der ganzzahligen Umwandlung von shiftCount ergibt. Nach rechts verschobene Bits werden abgeschnitten. Um das Vorzeichen des ursprünglichen Ausdrucks zu bewahren, werden die Bits auf der linken Seite mit 0 aufgefüllt, wenn das höchstwertige Bit (das Bit ganz links) von expression gleich 0 ist. Wenn das höchstwertige Bit 1 ist, werden sie mit 1 aufgefüllt. Die Verschiebung eines Bits um eine Stelle nach rechts entspricht einer Division durch 2 und dem Abschneiden des Rests.
Eine Gleitkommazahl wird in eine Ganzzahl umgewandelt. Dabei werden alle Nachkommastellen abgeschnitten. Eine positive Ganzzahl wird in einen vorzeichenlosen Hexadezimalwert mit einem Maximalwert von 4294967295 bzw. 0xFFFFFFFF umgewandelt. Ist die ursprüngliche Zahl größer, werden die höchstwertigen Stellen bei der Umwandlung abgeschnitten, sodass das Ergebnis weiterhin ein 32-Bit-Wert ist. Eine negative Zahl wird mithilfe der Zweierkomplement-Darstellung in einen vorzeichenlosen Hexadezimalwert von mindestens -2147483648 bzw. 0x800000000 konvertiert. Von einer kleineren Zahl wird das Zweierkomplement gebildet (mit höherer Genauigkeit), die höchstwertigen Stellen werden wiederum abgeschnitten.
Das Ergebnis wird als vorzeichenbehafteter 32-Bit-Zweierkomplementwert interpretiert, also handelt es sich bei diesem Wert um eine Ganzzahl zwischen -2147483648 und 2147483647.
Operanden
| expression:Number — Eine Zahl oder ein Ausdruck, die bzw. der bitweise nach rechts verschoben werden soll.
|
| shiftCount:Number — Eine Zahl oder ein Ausdruck, die bzw. der in eine Ganzzahl von 0 bis 31 umgewandelt werden kann.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen In dem folgenden Beispiel wird 65535 in eine 32-Bit-Ganzzahl umgewandelt und um 8 Bit nach rechts verschoben, was einen Dezimalwert von 255 ergibt:
var a:Number = 65535 >> 8;
trace(a); // 255
Dies errechnet sich wie folgt: 65535 dezimal entspricht 00000000000000001111111111111111 binär (sechzehn Nullen gefolgt von sechzehn Einsen); das Verschieben nach rechts um acht Bit führt dazu, dass die acht niedrigstwertigen Bits (äußerste rechte Bits) verworfen werden. Da 65535 eine positive Zahl ist, werden die durch die Verschiebung verfügbar gewordenen Bitpositionen mit Nullen aufgefüllt (die acht äußersten linken Bitpositionen). Das Ergebnis ist 00000000000000000000000011111111 (vierundzwanzig Nullen gefolgt von acht Einsen) binär, was der 32-Bit-Ganzzahl 255 entspricht.
00000000000000001111111111111111 binary (65535 decimal)
>> 8 decimal
--------------------
00000000000000000000000011111111 binary (255 decimal)
In dem folgenden Beispiel wird -8 in eine 32-Bit-Ganzzahl umgewandelt und um 1 Bit nach rechts verschoben, was einen Dezimalwert von -4 ergibt:
var a:Number = -8 >> 1;
trace(a); // -4
Dies errechnet sich wie folgt: -8 dezimal entspricht 11111111111111111111111111111000 binär (neunundzwanzig Einsen gefolgt von drei Nullen); das Verschieben nach rechts um ein Bit führt dazu, dass das niedrigstwertige Bit (das äußerste rechte Bit) verworfen werden. Da -8 eine negative Zahl ist, wird die durch die Verschiebung verfügbar gewordene Bitposition mit 1 aufgefüllt (die äußerste linke Bitposition). Das Ergebnis ist der binäre Wert 11111111111111111111111111111100 (dreißig Einsen gefolgt von zwei Nullen), was der 32-Bit-Ganzzahl -4 entspricht.
11111111111111111111111111111000 binary (-8 decimal)
>> 1 decimal
--------------------
11111111111111111111111111111100 binary (-4 decimal)
Siehe auch
Verwendung
| expression >>= shiftCount |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Dieser Operator führt eine bitweise Verschiebung nach rechts durch und speichert das Ergebnis in expression.
Die folgenden beiden Anweisungen sind gleichwertig:
A >>= B;
A = (A >> B);
Operanden
| expression:Number — Eine Zahl oder ein Ausdruck, die bzw. der bitweise nach rechts verschoben werden soll.
|
| shiftCount:Number — Eine Zahl oder ein Ausdruck, die bzw. der in eine Ganzzahl von 0 bis 31 umgewandelt werden kann.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Der folgende Code verwendet den Operator für eine bitweise Verschiebung und Zuweisung (
>>=).
function convertToBinary(numberToConvert:Number):String {
var result:String = "";
for (var i = 0; i < 32; i++) {
// Extract least significant bit using bitwise AND.
var lsb:Number = numberToConvert & 1;
// Add this bit to the result.
result = (lsb ? "1" : "0")+result;
// Shift numberToConvert right by one bit, to see next bit.
numberToConvert >>= 1;
}
return result;
}
trace(convertToBinary(479));
// Returns the string 00000000000000000000000111011111.
// This string is the binary representation of the decimal number 479.
Siehe auch
Verwendung
| expression >>> shiftCount |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Entspricht dem Operator für bitweise Verschiebung nach rechts (>>), bewahrt jedoch nicht das Vorzeichen des ursprünglichen Ausdrucks, da die Bits auf der linken Seite stets mit 0 aufgefüllt werden.
Eine Gleitkommazahl wird in eine Ganzzahl umgewandelt. Dabei werden alle Nachkommastellen abgeschnitten. Eine positive Ganzzahl wird in einen vorzeichenlosen Hexadezimalwert mit einem Maximalwert von 4294967295 bzw. 0xFFFFFFFF umgewandelt. Ist die ursprüngliche Zahl größer, werden die höchstwertigen Stellen bei der Umwandlung abgeschnitten, sodass das Ergebnis weiterhin ein 32-Bit-Wert ist. Eine negative Zahl wird mithilfe der Zweierkomplement-Darstellung in einen vorzeichenlosen Hexadezimalwert von mindestens -2147483648 bzw. 0x800000000 konvertiert. Von einer kleineren Zahl wird das Zweierkomplement gebildet (mit höherer Genauigkeit), die höchstwertigen Stellen werden wiederum abgeschnitten.
Das Ergebnis wird als vorzeichenlose 32-Bit-Ganzzahl interpretiert, also handelt es sich bei diesem Wert um eine Ganzzahl zwischen 0 und 4294967295.
Hinweis: Obwohl ActionScript keinen Operator für ein "vorzeichenlose bitweise Verschiebung nach links" umfasst, können Sie den gleichen Effekt erreichen, indem Sie uint(expression << shiftCount) verwenden:
Operanden
| expression:Number — Eine Zahl oder ein Ausdruck, die bzw. der bitweise nach rechts verschoben werden soll.
|
| shiftCount:Number — Eine Zahl oder ein Ausdruck, die bzw. der in eine Ganzzahl von 0 bis 31 umgewandelt werden kann.
|
Ergebnis
| uint — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen In dem folgenden Beispiel wird -1 in eine 32-Bit-Ganzzahl umgewandelt und um 1 Bit nach rechts verschoben.
var a:Number = -1 >>> 1;
trace(a); // 2147483647
Dies errechnet sich wie folgt: -1 dezimal entspricht 11111111111111111111111111111111 binär (zweiunddreißig Einsen), beim vorzeichenlosen Verschieben um ein Bit nach rechts wird das niedrigstwertige (äußerste rechte) Bit entfernt und das höchstwertige (äußerste linke) Bit mit einer 0 aufgefüllt. Das Ergebnis lautet 01111111111111111111111111111111 binär, was der 32-Bit-Ganzzahl 2147483647 entspricht.
Siehe auch
Verwendung
| expression >>>= shiftCount |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Dieser Operator führt eine vorzeichenlose bitweise Verschiebung nach rechts durch und speichert das Ergebnis in expression. Die folgenden beiden Anweisungen sind gleichwertig:
A >>>= B;
A = (A >>> B);
Operanden
| expression:Number — Eine Zahl oder ein Ausdruck, die bzw. der bitweise nach rechts verschoben werden soll.
|
| shiftCount:Number — Eine Zahl oder ein Ausdruck, die bzw. der in eine Ganzzahl von 0 bis 31 umgewandelt werden kann.
|
Ergebnis
| uint — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen In dem folgenden Beispiel wird -1 in eine 32-Bit-Ganzzahl umgewandelt und um 1 Bit nach rechts verschoben.
var a:Number = -1;
a >>>= 1;
trace(a); // 2147483647
Dies errechnet sich wie folgt: -1 dezimal entspricht 11111111111111111111111111111111 binär (zweiunddreißig Einsen), beim vorzeichenlosen Verschieben um ein Bit nach rechts wird das niedrigstwertige (äußerste rechte) Bit entfernt und das höchstwertige (äußerste linke) Bit mit einer 0 aufgefüllt. Das Ergebnis lautet 01111111111111111111111111111111 binär, was der 32-Bit-Ganzzahl 2147483647 entspricht.
Siehe auch
Verwendung
| expression1 ^ expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wandelt expression1 und expression2 in vorzeichenlose 32-Bit-Ganzzahlen um und platziert eine 1 an jeder Bit-Position, an der die entsprechenden Bits in expression1 oder expression2, jedoch nicht in beiden, 1 sind.
Eine Gleitkommazahl wird in eine Ganzzahl umgewandelt. Dabei werden alle Nachkommastellen abgeschnitten. Eine positive Ganzzahl wird in einen vorzeichenlosen Hexadezimalwert mit einem Maximalwert von 4294967295 bzw. 0xFFFFFFFF umgewandelt. Ist die ursprüngliche Zahl größer, werden die höchstwertigen Stellen bei der Umwandlung abgeschnitten, sodass das Ergebnis weiterhin ein 32-Bit-Wert ist. Eine negative Zahl wird mithilfe der Zweierkomplement-Darstellung in einen vorzeichenlosen Hexadezimalwert von mindestens -2147483648 bzw. 0x800000000 konvertiert. Von einer kleineren Zahl wird das Zweierkomplement gebildet (mit höherer Genauigkeit), die höchstwertigen Stellen werden wiederum abgeschnitten.
Das Ergebnis wird als vorzeichenbehafteter 32-Bit-Zweierkomplementwert interpretiert, also handelt es sich bei diesem Wert um eine Ganzzahl zwischen -2147483648 und 2147483647.
Operanden
| expression1:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Im folgenden Beispiel wird der bitweise XOR-Operator für die Dezimalzahlen 15 und 9 verwendet und das Ergebnis der Variablen
a zugewiesen.
// 15 decimal = 1111 binary
// 9 decimal = 1001 binary
var a:Number = 15 ^ 9;
trace(a);
// 1111 ^ 1001 = 0110
// returns 6 decimal (0110 binary)
Siehe auch
Verwendung
| expression1 ^= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 ^ expression2 zu. Die beiden folgenden Anweisungen sind beispielsweise gleichwertig:
x ^= y
x = x ^ y
Operanden
| expression1:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number — Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| int — Das Ergebnis der bitweisen Operation. |
Beispiel Verwendung von Beispielen Im folgenden Beispiel wird eine bitweise XOR-Zuweisung (^=) veranschaulicht:
// 15 decimal = 1111 binary
var a:Number = 15;
// 9 decimal = 1001 binary
var b:Number = 9;
trace(a ^= b); // returns 6 decimal (0110 binary)
Siehe auch
Verwendung
| /* comment */ /* comment comment */ |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Begrenzt mindestens eine Skriptkommentarzeile. Der gesamte Text, der zwischen dem einleitenden Trennzeichen (/*) und dem abschließenden Trennzeichen (*/) steht, wird als Kommentar interpretiert und vom ActionScript-Interpreter ignoriert. Verwenden Sie diese Trennzeichen für Kommentare in mehreren aufeinander folgenden Zeilen. Für einzeilige Kommentare verwenden Sie das Trennzeichen //.
Wenn Sie vergessen, das abschließende Trennzeichen (*/) einzugeben, oder versuchen, Kommentare ineinander zu verschachteln, wird eine Fehlermeldung erzeugt. Nach einem einleitenden Trennzeichen (/*) führt bereits das erste schließende Trennzeichen (*/) zum Abschluss des Kommentars, unabhängig davon, wie viele einleitende Trennzeichen zwischen beiden stehen.
Operanden
| comment:* — Beliebige Zeichen.
|
Beispiel Verwendung von Beispielen In dem folgenden Skript werden Blockkommentar-Trennzeichen am Anfang des Skripts verwendet:
/* records the X and Y positions of
the ball and bat movie clips */
var ballX:Number = ball_mc._x;
var ballY:Number = ball_mc._y;
var batX:Number = bat_mc._x;
var batY:Number = bat_mc._y;
Der folgende Versuch, Kommentare zu verschachteln, führt zu einer Fehlermeldung:
/* This is an attempt to nest comments.
/* But the first closing tag will be paired
with the first opening tag */
and this text will not be interpreted as a comment */
Siehe auch
Verwendung
| myXML = <{tagName} {attributeName} = {attributeValue}>{content}</{tagName}> |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet einen Ausdruck aus, der in einem XML- oder XMLList-Initialisierer verwendet wird. Ein XML- oder XMLList-Initialisierer ist ein Literalwert, der einer Variablen des Typs XML oder XMLList zugewiesen ist. Ein Ausdruck, der von den XML-Operatoren { und } } begrenzt ist, kann anstelle von Literalnamen oder Werten in einem XML- oder XMLList-Initialisierer verwendet werden. Ein Ausdruck kann anstelle von tagName, attributeName, attributeValue und content verwendet werden.
Operanden
| myXML:* — Ein XML- oder XMLList-Objekt.
|
| tagName:* — Ein Ausdruck, der den Namen eines XML-Tags auswertet.
|
| attributeName:* — Ein Ausdruck, der den Namen eines XML-Attributs auswertet.
|
| attributeValue:* — Ein Ausdruck, der den Wert eines XML-Attributs auswertet.
|
| content:* — Ein Ausdruck, der den Inhalt eines XML-Tags auswertet.
|
Beispiel Verwendung von Beispielen Das folgende Beispiel zeigt, wie die Operatoren { und } zum Definieren eines XML-Literals verwendet werden:
var tagname:String = "item";
var attributename:String = "id";
var attributevalue:String = "5";
var content:String = "Chicken";
var x:XML = <{tagname} {attributename}={attributevalue}>{content}</{tagname}>;
trace(x.toXMLString()); // <item id="5">Chicken</item>
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Greift auf eine Eigenschaft oder ein Attribut eines XML- oder XMLList-Objekts zu. Der Klammern-Operator ermöglicht Ihnen den Zugriff auf Eigenschaftennamen, die mit dem Punkt-Operator (.) nicht zugänglich sind.
Operanden
| myXML:* — Ein XML- oder XMLList-Objekt.
|
| expression:* — Ein Ausdruck, der den Namen eines XML-Tags oder -Attributs auswertet.
|
Beispiel Verwendung von Beispielen Das folgende Beispiel zeigt, wie die Operatoren
[ und
] auf eine XML-Eigenschaft zugreifen, die mit dem Punkt-Operator nicht zugänglich ist, da ein Bindestrich im Tagnamen vorhanden ist:
var myXML:XML = <a><foo-bar>44</foo-bar></a>;
trace(myXML["foo-bar"]);
Siehe auch
Verwendung
| (expression1, expression2[, expressionN... ]) |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet expression1 aus, dann expression2 usw. Dieser Operator wird hauptsächlich in Verbindung mit for-Schleifenanweisungen und häufig zusammen mit dem ()-Operator verwendet.
Operanden
| expression1:* — Ein auszuwertender Ausdruck.
|
| expression2:* — Ein auszuwertender Ausdruck.
|
| expressionN:* — Eine beliebige Anzahl weiterer auszuwertender Ausdrücke.
|
Ergebnis
| Object — Die Werte der ausgewerteten Ausdrücke. |
Beispiel Verwendung von Beispielen In dem folgenden Beispiel wird der Komma-Operator (
,) in einer
for-Schleife verwendet:
for (i = 0, j = 0; i < 3 && j < 3; i++, j+=2) {
trace("i = " + i + ", j = " + j);
}
// output:
// i = 0, j = 0
// i = 1, j = 2
In dem folgenden Beispiel wird der Komma-Operator ohne den Klammern-Operator verwendet. Es veranschaulicht, dass der Zuweisungs-Operator (
=) Vorgang vor dem Komma-Operator hat:
var v:Number = 0;
v = 4, 5, 6;
trace(v); // 4
In dem folgenden Beispiel wird ein Komma-Operator mit Klammern verwendet. Es veranschaulicht, dass der Komma-Operator den Wert des letzten Ausdrucks zurückgibt:
var v:Number = 0;
v = (4, 5, 6);
trace(v); // 6
In dem folgenden Beispiel wird ein Komma-Operator ohne Klammern verwendet. Es veranschaulicht, dass der Komma-Operator dafür sorgt, dass alle Ausdrücke nacheinander ausgewertet werden: Der ersten Ausdruck,
v + 4, wird der Variablen
v zugewiesen, da der Zuweisungs-Operator () Vorrang gegenüber dem Komma-Operator hat. Der zweite Ausdruck,
z++, wird ausgewertet, und
z wird um 1 erhöht.
var v:Number = 0;
var z:Number = 0;
v = v + 4, z++, v + 6;
trace(v); // 4
trace(z); // 1
Das folgende Beispiel ist bis auf die hinzugefügten Klammern mit dem vorherigen Beispiel identisch. Das Hinzufügen von Klammern ändert die Reihenfolge der Operationen insofern, als dass der Komma-Operator vor dem Zuweisungs-Operator (
=) ausgewertet wird:
var v:Number = 0;
var z:Number = 0;
v = (v + 4, z++, v + 6);
trace(v); // 6
trace(z); // 1
Siehe auch
Verwendung
| expression1 + expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Verkettet (verbindet) Strings. Wenn einer der Ausdrücke ein String ist, werden alle Ausdrücke in Strings umgewandelt und verkettet.
Wenn beide Ausdrücke Zahlen sind, verhält sich dieser Operator wie ein Additions-Operator.
Operanden
| expression1:String — Ein zu verkettender String.
|
| expression2:String — Ein zu verkettender String.
|
Ergebnis
| String — Der verkettete String. |
Beispiel Verwendung von Beispielen In dem folgenden Beispielcode werden zwei Strings verkettet:
var lastName:String = "Cola";
var instrument:String = "Drums";
trace(lastName + " plays " + instrument); // Cola plays Drums
Dieses Beispiel zeigt, dass wenn einer der Ausdrücke ein String ist, alle Ausdrücke in Strings umgewandelt und verkettet werden.
trace("Number " + 8 + 0); // Number 80
Das folgende Beispiel veranschaulicht, dass numerische Summen rechts von einem String-Ausdruck nicht berechnet werden, da sie zu Strings umgewandelt wurden:
var a:String = 3 + 10 + "asdf";
trace(a); // 13asdf
var b:String = "asdf" + 3 + 10;
trace(b); // asdf310
Siehe auch
Verwendung
| expression1 + expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Verkettet (verbindet) XML- oder XMLList-Werte zu einem XMLList-Objekt.
Ein XMLList-Objekt resultiert nur dann, wenn beide Operanden XML- oder XMLList-Werte sind.
Operanden
| expression1:* —
Ein XML- oder XMLList-Wert.
|
| expression2:* —
Ein XML- oder XMLList-Wert.
|
Ergebnis
| XMLList — Das verkettete XMLList-Objekt. |
Beispiel
Verwendung von Beispielen
Das folgende Beispiel zeigt, wie der XMLList-Operator
+ (Verkettung) verwendet wird:
var x1:XML =
<employee id = "42">
<firstName>Joe</firstName>
<lastName>Smith</lastName>
</employee>;
var x2:XML =
<employee id = "43">
<firstName>Susan</firstName>
<lastName>Jones</lastName>
</employee>;
var myXMLList:XMLList = x1 + x2;
trace(myXMLList.toXMLString());
Die Anweisung trace erzeugt die folgende Ausgabe:
<employee id = "42">
<firstName>Joe</firstName>
<lastName>Smith</lastName>
</employee>
<employee id = "43">
<firstName>Susan</firstName>
<lastName>Jones</lastName>
</employee>
Siehe auch
Verwendung
| expression1 += expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 + expression2 zu. Die folgenden Anweisungen sind beispielsweise gleichwertig:
x += y;
x = x + y;
Alle Regeln des Verkettungs-Operators (
+) gelten auch für den Verkettungszuweisungs-Operator (
+=). Die Verwendung der Verkettungszuweisung für die Eigenschaft
text einer
TextField-Instanz (d. h.
someTextField.text += moreText ) ist deutlich weniger effizient als
TextField.appendText(), insbesondere mit einer
TextField-Instanz mit sehr umfangreichem Inhalt.
Operanden
| expression1:String —
Ein String.
|
| expression2:String —
Ein String.
|
Ergebnis
| Number — Das Ergebnis der Verkettung. |
Beispiel
Verwendung von Beispielen
In diesem Beispiel wird der
+=-Operator mit einem String-Ausdruck verwendet:
var x1:String = "My name is ";
x1 += "Gilbert";
trace(x1); // My name is Gilbert
Siehe auch
Verwendung
| expression1 += expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1, also einem XMLList-Objekt, den Wert von expression1 + expression2 zu.
Die folgenden Anweisungen sind beispielsweise gleichwertig:
x += y;
x = x + y;
Alle Regeln des XMLList Verkettungs-Operators (
+) gelten auch für den XMLList Verkettungszuweisungs-Operator (
+=).
Operanden
| expression1:XMLList —
Das XMLList-Objekt, dem Sie einen neuen Wert zuweisen.
|
| expression2:* —
Ein XML- oder XMLList-Wert.
|
Beispiel
Verwendung von Beispielen
Das folgende Beispiel zeigt, wie der XMLList-Operator
+= (Verkettungszuweisung) verwendet wird:
var x1:XML = <location>Athens</location>;
var x2:XML = <location>Paris</location>;
myXMLList = x1 + x2;
var x3:XML = <location>Springfield</location>;
myXMLList += x3;
trace(myXMLList.toXMLString());
Die Anweisung trace erzeugt die folgende Ausgabe:
<location>Athens</location>
<location>Paris</location>
<location>Springfield</location>
Siehe auch
Verwendung
| expression1 ? expression2 : expression3 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet expression1 aus. Wenn der Wert von expression1 gleich true ist, entspricht das Ergebnis dem Wert von expression2; andernfalls ist das Ergebnis der Wert von expression3.
Operanden
| expression1:Boolean —
Ein Ausdruck, der einen Boolean-Wert ergibt (in der Regel ein Vergleichsausdruck), wie z. B. x < 5.
|
| expression2:* —
Ein Wert beliebigen Typs.
|
| expression3:* —
Ein Wert beliebigen Typs.
|
Ergebnis
| * — Der Wert von expression2 oder expression3. |
Beispiel
Verwendung von Beispielen
Die folgende Anweisung weist den Wert der Variablen
x zur Variablen
z zu, da der erste Ausdruck als
true ausgewertet wird:
var x:Number = 5;
var y:Number = 10;
var z = (x < 6) ? x: y;
trace(z); // returns 5
Das folgende Beispiel veranschaulicht eine Bedingungsanweisung in Kurzform:
var timecode:String = (new Date().getHours() < 11) ? "AM" : "PM";
trace(timecode);
Die gleiche Bedingungsanweisung könnte in Langform ausgeschrieben folgendermaßen aussehen:
if (new Date().getHours() < 11) {
var timecode:String = "AM";
} else {
var timecode:String = "PM";
}
trace(timecode);
Siehe auch
Verwendung
| --expression expression-- |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Subtrahiert 1 vom Operanden. Der Operand kann eine Variable, ein Element in einem Array oder eine Objekteigenschaft sein.
Die Prä-Dekrement-Form des Operators (--expression) subtrahiert 1 von expression und gibt das Ergebnis zurück.
Die Post-Dekrement-Form des Operators (expression--) subtrahiert 1 von expression und gibt den Ausgangswert von expression (das Ergebnis vor der Subtraktion) zurück.
Operanden
| expression:Number —
Eine Zahl oder eine Variable, die den Wert einer Zahl annimmt.
|
Ergebnis
| Number — Das Ergebnis des dekrementierten Werts. |
Beispiel
Verwendung von Beispielen
Die Prä-Dekrement-Form des Operators dekrementiert
x zu 2 (
x -
1 = 2) und gibt das Ergebnis als
y zurück:
var x:Number = 3;
var y:Number = --x; // y is equal to 2
Die Post-Dekrement-Form des Operators dekrementiert
x zu 2 (
x -
1 = 2) und gibt den ursprünglichen Wert von
x als das Ergebnis
y zurück:
var x:Number = 3;
var y:Number = x--; // y is equal to 3
In dem folgenden Beispiel wird eine Schleife von 10 bis 1 durchlaufen. Bei jedem Schritt wird der Zähler
i um 1 verringert.
for (var i = 10; i > 0; i--) {
trace(i);
}
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Verwirft die durch reference angegebene Objekteigenschaft. Das Ergebnis ist true, wenn die Eigenschaft nach der vollständigen Ausführung des Vorgangs nicht mehr vorhanden ist, anderenfalls false.
Der delete-Operator gibt true zurück, wenn er eine nicht vorhandene Eigenschaft oder eine dynamische Eigenschaft, die nicht in einer Klasse definiert ist, aufruft.
Wenn der Parameter delete nicht gelöscht werden kann, schlägt der Operator false möglicherweise fehl, und es wird reference zurückgegeben.
Feste Eigenschaften oder Variablen, die mit der var-Anweisung deklariert wurden, können nicht gelöscht werden.
Eine feste Eigenschaft ist eine Variable oder Methode, die in einer Klassendefinition definiert ist.
Der Operator delete kann nicht zum Löschen einer Klasseneigenschaft verwendet werden, es sei denn, es handelt sich um eine zur Laufzeit hinzugefügte dynamische Klasse. Die Eigenschaften versiegelter Klassen können nicht mit delete gelöscht werden. Setzen Sie die Eigenschaft stattdessen auf null.
Hinweis: Sie können ein Objekt nicht löschen, aber es durch einen Garbage Collector (Speichermanagement) entfernen lassen, indem Sie alle Verweise auf das Objekt entfernen.
Der häufigste Verweis auf ein Objekt ist eine Variable, die auf dieses Objekt verweist. Sie können einen solchen Verweis löschen, indem Sie die Variable auf null setzen.
Der Garbage Collector löscht alle Objekte, die keine Verweise enthalten.
Operanden
| reference:* —
Der Name der zu entfernenden Eigenschaft.
|
Ergebnis
| Boolean — Der Wert true, wenn der Löschvorgang erfolgreich ist, andernfalls false. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird eine Objekteigenschaft gelöscht.
// create the new object "account"
var account:Object = new Object();
// assign property name to the account
account.name = "Jon";
// delete the property
delete account.name;
trace(account.name); // undefined
// delete a nonexistent property
var fooDeleted:Boolean = delete account.foo;
trace(fooDeleted); // true
In dem folgenden Beispiel wird der Wert eines Array-Elements gelöscht, der Wert der Eigenschaft length aber nicht geändert:
var my_array:Array = new Array();
my_array[0] = "abc"; // my_array.length == 1
my_array[1] = "def"; // my_array.length == 2
my_array[2] = "ghi"; // my_array.length == 3
// my_array[2] is deleted, but Array.length is not changed
delete my_array[2];
trace(my_array.length); // 3
trace(my_array); // abc,def,
Im folgenden Beispiel wird demonstriert, wie der Boolean-Wert, der von delete zurückgegebene wird, als Bedingung für die zukünftige Ausführung des Codes verwendet werden kann. Wenn ein Element bereits gelöscht wurde, führt das erneute Aufrufen von delete zur Rückgabe von false.
var my_array:Array = [ "abc", "def", "ghi" ];
var deleteWasSuccessful:Boolean
deleteWasSuccessful = delete my_array[0];
if(deleteWasSuccessful) delete my_array[1];
deleteWasSuccessful = delete my_array[0];
if(deleteWasSuccessful) delete my_array[2];
trace(my_array) // outputs: undefined,undefined,ghi
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Löscht die XML-Elemente oder -Attribute, die durch reference angegeben werden.
Bei Verwendung mit einem XMLList-Operanden ist das Ergebnis des delete-Operators immer true, weil der XMLList Operand immer auf ein gültiges (wenn auch möglicherweise leeres) XMLList-Objekt verweist.
Operanden
| reference:XMLList —
Ein XMLList-Objekt, das die zu löschenden XML-Elemente oder -Attribute angibt.
|
Ergebnis
| Boolean — Der Wert true, wenn der Löschvorgang erfolgreich ist, andernfalls false. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird nacheinander gezeigt, wie ein Attribut gelöscht wird, wie
ein einzelnes Element gelöscht wird und wie mehrere Elemente gelöscht werden:
var x1:XML = <x1>
<a id = "52">AYY</a>
<a>AYY 2 </a>
<b>BEE</b>
<c>CEE</c>
</x1>;
trace(x1.toXMLString());
trace("___________");
delete x1.a.@id;
trace(x1.toXMLString());
trace("___________");
delete x1.b;
trace(x1.toXMLString());
trace("___________");
delete x1.a;
trace(x1.toXMLString());
Dies erzeugt die folgende Ausgabe:
<x1>
<a id="52">AYY</a>
<a>AYY 2</a>
<b>BEE</b>
<c>CEE</c>
</x1>
___________
<x1>
<a>AYY</a>
<a>AYY 2</a>
<b>BEE</b>
<c>CEE</c>
</x1>
___________
<x1>
<a>AYY</a>
<a>AYY 2</a>
<c>CEE</c>
</x1>
___________
<x1>
<c>CEE</c>
</x1>
Das folgende Beispiel zeigt, wie alle Inhalte eines Elements gelöscht werden, einschließlich der Attribute
und untergeordneten Elemente, ohne dass das Element selbst gelöscht wird:
var xml:XML =
<order>
<item id="121">hamburger</item>
<item id="122">fries</item>
<item id="123">chocolate shake</item>
</order>;
delete xml.item[1].*;
delete xml.item[1].@*;
trace(xml);
Dies erzeugt die folgende Ausgabe:
<order>
<tem id="121">hamburger</item>
<item/>
<item id="123">chocolate shake</item>
</order>
Verwendung
| myXML..childElement1..@attributeName |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Navigiert zu den Nachfolgerelementen eines XML- oder XMLList-Objekts
oder findet (in Verbindung mit dem @-Operator) die übereinstimmenden Attribute der Nachfolger.
Die übereinstimmenden Elemente oder Attribute müssen dem XML- oder XMLList-Objekt nicht direkt untergeordnet sein;
sie können sich auch auf einer niedrigeren Stufe in der Struktur befinden. Das Ergebnis ist ein XMLList-Objekt,
da mehrere untergeordnete Elemente oder Attribute übereinstimmen können.
Die Reihenfolge der Knoten im zurückgegebenen XMLList-Objekt ist das Ergebnis der vorrangigen Tiefenprüfung. Berücksichtigen Sie beispielsweise Folgendes:
var myXML:XML = <a>
<b>one
<c>
<b>two</b>
</c>
</b>
<b>three</b>
</a>;
trace(myXML..b[0].toXMLString());
trace("______________");
trace(myXML..b[1].toXMLString());
trace("______________");
trace(myXML..b[2].toXMLString());
Dies erzeugt die folgende Ausgabe:
<b>
one
<c>
<b>two</b>
</c>
</b>
______________
<b>two</b>
______________
<b>three</b>
Um Nachfolger mit Namen zurückzugeben, die in ActionScript reservierten Worten entsprechen, verwenden Sie die
XML.descendants()-Methode anstelle des Nachfolger-Operators (..). Dies wird
im folgenden Beispiel veranschaulicht:
var xml:XML =
<enrollees>
<student id="239">
<class name="Algebra" />
<class name="Spanish 2"/>
</student>
<student id="206">
<class name="Trigonometry" />
<class name="Spanish 2" />
</student>
</enrollees>;
trace(xml.descendants("class"));
Operanden
| myXML:Object —
Das XML- bzw. XMLList-Objekt.
|
| childElement1_or_attributeName —
Der Name einer XML-Eigenschaft oder der Name eines Attributs.
|
Beispiel
Verwendung von Beispielen
Das folgende Beispiel zeigt, wie der Nachfolger-Accessor (..) dazu verwendet werden kann, die Nachfolgerelemente eines XML-Objekts und ein Attribut eines Elements zurückzugeben:
var myXML:XML =
<employees>
<employee id = "42">
<firstName>Billy</firstName>
<lastName>Einstein</lastName>
</employee>
<employee id = "43">
<firstName>Sally</firstName>
<lastName>Shostakovich</lastName>
</employee>
</employees>
trace(myXML..firstName);
// <firstName>Billy</firstName>
// <firstName>Sally</firstName>
trace(myXML..@id); //4243
Siehe auch
Verwendung
| expression1 / expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Dividiert expression1 durch expression2. Das Ergebnis der Division ist eine Gleitkommazahl mit doppelter Genauigkeit.
Operanden
| expression:Number —
Eine Zahl oder eine Variable, die den Wert einer Zahl annimmt.
|
Ergebnis
| Number — Eine Gleitkommazahl als Ergebnis der Operation. |
Beispiel
Verwendung von Beispielen
Das folgende Beispiel zeigt, dass die Ergebnisse einer Division durch 0 unterschiedlich sind, je nachdem, ob der Dividend positiv, negativ oder 0 ist.
trace(3/0); // Infinity
trace(-3/0); // -Infinity
trace(0/0); // NaN
Siehe auch
Verwendung
| expression1 /= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 / expression2 zu. Die beiden folgenden Anweisungen sind beispielsweise gleichwertig:
x /= y;
x = x / y;
Operanden
| expression1:Number —
Eine Zahl oder eine Variable, die den Wert einer Zahl annimmt.
|
| expression2:Number —
Eine Zahl oder eine Variable, die den Wert einer Zahl annimmt.
|
Ergebnis
Beispiel
Verwendung von Beispielen
Das folgende Beispiel zeigt die Verwendung eines Divisionszuweisungs-Operators (
/=) in Verbindung mit Variablen und Zahlen:
var a:Number = 10;
var b:Number = 2;
a /= b; trace(a); // 5
Siehe auch
Verwendung
| object.property_or_method |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Dieser Operator greift auf die Variablen und Methoden einer Klasse zu, ruft Objekteigenschaften ab bzw. setzt sie und begrenzt importierte Pakete und Klassen.
Operanden
| object:Object —
Eine Instanz einer Klasse. Bei dem Objekt kann es sich um eine Instanz einer beliebigen vordefinierten ActionScript-Klasse oder einer benutzerdefinierten Klasse handeln. Dieser Operand steht immer links vom Punkt-Operator (.).
|
| property_or_method:* —
Der Name einer Eigenschaft oder Methode, die einem Objekt zugeordnet ist. Alle gültigen Methoden und Eigenschaften der integrierten Klassen sind in den Methoden- und Eigenschaftsübersichten der entsprechenden Klassen aufgeführt. Dieser Operand steht immer rechts vom Punkt-Operator (.).
|
Ergebnis
| * — Die rechts vom Punkt-Operator aufgeführte Variable, Methode oder Eigenschaft. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird der Punkt-Operator als Trennzeichen beim Importieren der Klasse verwendet.
import flash.utils.Timer;
In dem folgenden Beispielcode wird ein generisches Objekt erstellt und der Punkt-Operator verwendet, um eine neue Eigenschaft hinzuzufügen.
var obj:Object = new Object();
obj.propertyA = "hello";
trace(obj.propertyA); // hello
Siehe auch
Verwendung
| myXML.childElement
myXML.@attributeName |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Navigiert zu den untergeordneten Elementen
eines XML- oder XMLList-Objekts oder gibt (in Verbindung mit dem @-Operator) die Attribute
eines XML- oder XMLList-Objekts zurück. Das zurückgegebene Objekt ist ein XMLList-Objekt, da mehrere
untergeordnete Elemente oder Attribute übereinstimmen können.
Um Elemente mit Namen zurückgeben zu können, die in
ActionScript reservierten Worten entsprechen, verwenden Sie die Methode XML.elements() oder XML.descendants() anstelle des
Punkt-Operators (.). Dies wird im folgenden Beispiel veranschaulicht:
var xml:XML =
<student id="206">
<class name="Trigonometry" />
<class name="Spanish 2" />
</student>;
trace(xml.elements("class"));
trace(xml.descendants("class"));
Operanden
| myXML:Object —
Das XML- bzw. XMLList-Objekt.
|
| childElement:* —
Der Name einer XML-Eigenschaft.
|
| attributeName:* —
Der Name eines Attributs.
|
Ergebnis
| XMLList — Das angegebene XMLList-Objekt. |
Beispiel
Verwendung von Beispielen
Das folgende Beispiel zeigt, wie der Punkt-Operator (.) dazu verwendet werden kann, die untergeordneten Elemente eines XML-Objekts und ein Attribut eines Elements zurückzugeben:
var myXML:XML =
<employee id = "42">
<firstName>Billy</firstName>
<lastName>Einstein</lastName>
</employee>;
trace(myXML.firstName); // Billy
trace(myXML.@id); // 42
Siehe auch
Verwendung
| expression1 == expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Prüft zwei Ausdrücke auf Gleichheit. Das Ergebnis ist true, wenn die Ausdrücke gleich sind.
Wenn die Datentypen zweier Operanden übereinstimmen, hängt die Definition von "gleich" vom Datentyp der Operanden ab:
- Werte mit den Datentypen int, uint und Boolean werden als gleich angesehen, wenn sie den gleichen Wert aufweisen.
- Zahlen mit gleichen Werten werden als gleich angesehen, es sei denn, sie sind beide
NaN.
- Wenn der Wert beider Operanden
null oder undefined lautet, werden sie als gleich angesehen.
- String-Ausdrücke sind gleich, wenn sie dieselbe Anzahl von Zeichen enthalten und die Zeichen identisch sind.
- XML-Objekte:
- Wenn ein Operand ein Text- oder Attributknoten ist und der andere Operand einfachen Inhalt enthält, werden beide Operanden mit der
toString()-Methode in Strings konvertiert und als gleich angesehen, wenn die resultierenden Strings übereinstimmen.
- Andernfalls werden die Objekte nur dann als gleich angesehen, wenn der qualifizierende Name, Attribute und untergeordnete Eigenschaften beider Objekte übereinstimmen.
- XMLList-Objekte werden als gleich angesehen, wenn sie die gleiche Anzahl an Eigenschaften aufweisen und die Reihenfolge und die Werte der Eigenschaften beider Objekte übereinstimmen.
- Bei Namespace-Objekten werden die Werte als gleich angesehen, wenn die
uri-Eigenschaften beider Objekte übereinstimmen.
- Bei QName-Objekten werden die Werte als gleich angesehen, wenn die
uri-Eigenschaften beider Objekte übereinstimmen und die localName-Eigenschaften beider Objekte übereinstimmen.
- Variablen, die Objekte, Arrays und Funktionen darstellen, werden anhand ihrer Referenzen verglichen. Zwei Variablen sind gleich, wenn sie auf dasselbe Objekt, dasselbe Array oder dieselbe Funktion verweisen. Zwei separate Arrays gelten nie als gleich, selbst wenn sie dieselbe Anzahl von Elementen aufweisen.
Wenn die Datentypen der Operanden nicht übereinstimmen, ist das Ergebnis
false. Dies gilt in folgenden Fällen nicht:
- Die Werte der Operanden lauten
undefined und null. In diesem Fall ist das Ergebnis true.
- Die automatische Datentypkonvertierung wandelt Datentypen mit den Werten String, Boolean, int, uint und Number in kompatible Datentypen um. Die umgewandelten Werte sind gleich; in diesem Fall werden die Operanden als gleich angesehen.
- Ein Operand hat den Typ "XML" mit einfachen Inhalt (
hasSimpleContent() == true). Nachdem beide Operanden mit der toString()-Methode in Strings umgewandelt wurden, sind die resultierenden Strings gleich.
- Ein Operand hat den Typ XMLList, und eine der folgenden Bedingungen trifft zu:
- Die
length-Eigenschaft des XMLList-Objekts ist 0, und das andere Objekt ist undefined.
- Die
length-Eigenschaft des XMLList-Objekts ist 1, und das andere Element des XMLList-Objekts stimmt mit dem anderen Operanden überein.
Operanden
| expression1:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
| expression2:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
Ergebnis
| Boolean — Der Wert true, wenn die Ausdrücke gleich sind, andernfalls false. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird der Gleichheits-Operator (
==) in einer
if-Anweisung verwendet:
var a:String = "David"
var b:String = "David";
if (a == b) {
trace("David is David");
}
Die folgenden Beispiele verdeutlichen, wie der Gleichheits-Operator eine automatische Typkonvertierung beim Vergleich nach Wert durchführt. String-Werte werden in Zahlen konvertiert:
var a:Number = 5;
var b:String = "5";
trace(a == b); // true
Boolean Werte werden in Zahlen konvertiert, dabei wird
true in eine 1 und
false in eine 0 konvertiert:
var c:Number = 1;
var d:Boolean = true;
trace(c == d); // true
var e:Number = 0;
var f:Boolean = false;
trace(e == f); // true
Strings werden jedoch nicht in Boolean-Werte konvertiert, daher wird beim folgenden Beispiel
false zurückgegeben:
var g:String = "true";
var h:Boolean = true;
trace(g == h); // false
Die folgenden Beispiele veranschaulichen Vergleiche nach Referenz. Im ersten Beispiel werden zwei Arrays mit identischer Länge und Anzahl der Elemente verglichen.
Der Gleichheits-Operator gibt für diese beiden Arrays
false zurück.
Die Arrays erscheinen zwar gleich, bei einem Vergleich nach Verweisen ist es jedoch erforderlich, dass sowohl
firstArray als auch
secondArray auf dasselbe Array verweisen.
In dem zweiten Beispiel wird die Variable
thirdArray erstellt, die auf dasselbe Array verweist wie die Variable
firstArray.
Der Gleichheits-Operator gibt für diese beiden Arrays zurück, da beide Variablen auf dasselbe Array verweisen.
var firstArray:Array = new Array("one", "two", "three");
var secondArray:Array = new Array("one", "two", "three");
trace(firstArray == secondArray); // false
/* Arrays are only considered equal
if the variables refer to the same array. */
var thirdArray:Array = firstArray;
trace(firstArray == thirdArray); // true
Siehe auch
Verwendung
| expression1 > expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Vergleicht zwei Ausdrücke und stellt fest, ob expression1
größer ist als expression2. Ist dies der Fall, lautet das Ergebnis true.
Wenn expression1 kleiner oder gleich expression2 ist, lautet das Ergebnis false.
Wenn beide Operanden den Datentyp String aufweisen, werden die Operanden in alphabetischer
Reihenfolge ausgewertet. Großbuchstaben haben Vorrang vor Kleinbuchstaben. Andernfalls werden die Operanden zunächst
in Zahlen umgewandelt und dann verglichen.
Operanden
| expression1:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
| expression2:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
Ergebnis
| Boolean — Der Wert true, wenn expression1 größer als expression2 ist, andernfalls false. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird dargestellt, wie Strings alphabetisch verglichen werden. Dabei haben Großbuchstaben Vorrang vor Kleinbuchstaben:
var a:String = "first";
var b:String = "First";
trace(a > b); // true
Das folgende Beispiel zeigt, wie String- und Boolean-Werte in Zahlen umgewandelt werden:
var c:Number = 5;
var d:String = "4";
trace(c > d); // true
var e: Number = 2;
var f:Boolean = true;
trace(e > f); // true
Verwendung
| expression1 >= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Vergleicht zwei Ausdrücke und stellt fest, ob expression1 größer oder gleich expression2 ist (true) oder ob expression1 kleiner als expression2 (false).
Operanden
| expression1:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
| expression2:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
Ergebnis
| Boolean — Der Wert true, wenn expression1 größer oder gleich expression2 ist, andernfalls false. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird mithilfe des Größer oder gleich-Operators (>=) bestimmt, ob die Stundenangabe der aktuellen Uhrzeit größer oder gleich 12 ist:
if (new Date().getHours() >= 12) {
trace("good afternoon");
} else {
trace("good morning");
}
Siehe auch
Verwendung
| expression1 in expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet aus, ob eine Eigenschaft ein Teil eines bestimmten Objekts ist.
Um den in-Operator verwenden zu können, geben Sie einen Eigenschaftennamen als ersten Operanden
und ein Objekt als zweiten Operanden an. Wenn das von Ihnen angegebene Objekt eine solche
Eigenschaft enthält, ist das Ergebnis true, andernfalls false.
Handelt es sich bei dem angegebenen Objekt um ein Array-Objekt, können Sie mit dem Operator in
überprüfen, ob eine bestimmte Indexzahl gültig ist. Wenn Sie eine
Ganzzahl als ersten Operanden übergeben, ist das Ergebnis true, wenn der Index
innerhalb des gültigen Bereichs von Indexzahlen liegt, andernfalls false.
Ergebnis
| Boolean — Der Wert true, wenn expression1 eine Eigenschaft des Objekts ist, das von expression2 dargestellt wird, andernfalls false. |
Beispiel
Verwendung von Beispielen
Der folgende Beispielcode zeigt mit dem Operator
in an, dass
PI eine Eigenschaft des Math-Objekts ist,
myProperty jedoch nicht.
trace("PI" in Math); // true
trace("myProperty" in Math); // false
Der folgende Beispielcode zeigt mit dem Operator in an, dass die Zahlen 0, 1 und 2 gültige Indexzahlen im myArray-Objekt sind, die Zahl 3 jedoch nicht.
public var myArray:Array = ["zero", "one", "two"];
trace(0 in myArray); // true
trace(1 in myArray); // true
trace(2 in myArray); // true
trace(3 in myArray); // false
Siehe auch
Verwendung
| ++expression expression++ |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Addiert 1 zu einem Ausdruck.
Der Ausdruck kann eine Variable, ein Element in einem Array oder eine Objekteigenschaft
erstellt. Die Prä-Inkrement-Form des Operators (++expression) addiert 1 zu
expression und gibt das Ergebnis zurück. Die Post-Inkrement-Form des Operators
(expression++) addiert 1 zu expression und gibt den
Ausgangswert von expression (den Wert vor der Addition) zurück.
Operanden
| expression:Number —
Eine Zahl oder eine Variable, die den Wert einer Zahl annimmt.
|
Ergebnis
| Number — Das Ergebnis der Inkrementierung. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird ++ als Prä-Inkrement-Operator in einer
while-Schleife verwendet, um
zu zeigen, dass der Wert, der zu einem Array addiert wird, der Wert ist, um den inkrementiert wurde:
var preInc:Array = new Array();
var i:int = 0;
while (i < 10) {
preInc.push(++i);
}
trace(preInc); // 1,2,3,4,5,6,7,8,9,10
Im folgenden Beispiel wird ++ als Post-Inkrement-Operator in einer
while-Schleife verwendet, um
zu zeigen, dass der Wert, der zu einem Array addiert wird, der Ursprungswert ist:
var postInc:Array = new Array();
var i:int = 0;
while (i < 10) {
postInc.push(i++);
}
trace(postInc); // 0,1,2,3,4,5,6,7,8,9
Im folgenden Beispiel wird ++ als Post-Inkrement-Operator verwendet, um eine
while-Schleife fünfmal zu durchlaufen.
var i:int = 0;
while (i++ < 5) {
trace("this is execution " + i);
}
/* output:
this is execution 1
this is execution 2
this is execution 3
this is execution 4
this is execution 5
*/
Siehe auch
Verwendung
| expression1 != expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Prüft auf das genaue Gegenteil des Gleichheits-Operators (==). Wenn expression1 gleich expression2 ist, lautet das Ergebnis false. Wie auch beim Gleichheits-Operator (==) hängt die Definition von "gleich" von den verglichenen Datentypen ab:
Wenn die Datentypen zweier Operanden übereinstimmen, hängt die Definition von "gleich" vom Datentyp der Operanden ab:
- Werte mit den Datentypen int, uint und Boolean werden als gleich angesehen, wenn sie den gleichen Wert aufweisen.
- Zahlen mit gleichen Werten werden als gleich angesehen, es sei denn, sie sind beide
NaN.
- Wenn der Wert beider Operanden
null oder undefined lautet, werden sie als gleich angesehen.
- String-Ausdrücke sind gleich, wenn sie dieselbe Anzahl von Zeichen enthalten und die Zeichen identisch sind.
- XML-Objekte:
- Wenn ein Operand ein Text- oder Attributknoten ist und der andere Operand einfachen Inhalt enthält, werden beide Operanden mit der
toString()-Methode in Strings konvertiert und als gleich angesehen, wenn die resultierenden Strings übereinstimmen.
- Andernfalls werden die Objekte nur dann als gleich angesehen, wenn der qualifizierende Name, Attribute und untergeordnete Eigenschaften beider Objekte übereinstimmen.
- XMLList-Objekte werden als gleich angesehen, wenn sie die gleiche Anzahl an Eigenschaften aufweisen und die Reihenfolge und die Werte der Eigenschaften beider Objekte übereinstimmen.
- Bei Namespace-Objekten werden die Werte als gleich angesehen, wenn die
uri-Eigenschaften beider Objekte übereinstimmen.
- Bei QName-Objekten werden die Werte als gleich angesehen, wenn die
uri-Eigenschaften beider Objekte übereinstimmen und die localName-Eigenschaften beider Objekte übereinstimmen.
- Variablen, die Objekte, Arrays und Funktionen darstellen, werden anhand ihrer Referenzen verglichen. Zwei Variablen sind gleich, wenn sie auf dasselbe Objekt, dasselbe Array oder dieselbe Funktion verweisen. Zwei separate Arrays gelten nie als gleich, selbst wenn sie dieselbe Anzahl von Elementen aufweisen.
Wenn die Datentypen der Operanden nicht übereinstimmen, gibt der Ungleichheits-Operator (
!=) den Wert
true zurück. Dies gilt jedoch in den folgenden Fällen nicht:
- Die Werte der Operanden lauten
undefined und null. In diesem Fall ist das Ergebnis true.
- Die automatische Datentypkonvertierung wandelt Datentypen mit den Werten String, Boolean, int, uint und Number in kompatible Datentypen um. Die umgewandelten Werte sind gleich; in diesem Fall werden die Operanden als gleich angesehen.
- Ein Operand hat den Typ "XML" mit einfachen Inhalt (
hasSimpleContent() == true). Nachdem beide Operanden mit der toString()-Methode in Strings umgewandelt wurden, sind die resultierenden Strings gleich.
- Ein Operand hat den Typ XMLList, und eine der folgenden Bedingungen trifft zu:
- Die
length-Eigenschaft des XMLList-Objekts ist 0, und das andere Objekt ist undefined.
- Die
length-Eigenschaft des XMLList-Objekts ist 1, und das andere Element des XMLList-Objekts stimmt mit dem anderen Operanden überein.
Operanden
| expression1:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
| expression2:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
Ergebnis
| Boolean — Der Wert true, wenn die Ausdrücke ungleich sind, andernfalls false. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird das Ergebnis des Ungleichheits-Operators (
!=) veranschaulicht:
trace(5 != 8); // true
trace(5 != 5); // false
In dem folgenden Beispiel wird das Ergebnis des Ungleichheits-Operators (
!=) in einer
if-Anweisung veranschaulicht:
var a:String = "David";
var b:String = "Fool";
if (a != b) {
trace("David is not a fool");
}
Das folgende Beispiel veranschaulicht anhand zweier Funktionen einen Vergleich nach Referenz:
var a:Function = function() { trace("foo"); };
var b:Function = function() { trace("foo"); };
a(); // foo
b(); // foo
trace(a != b); // true
a = b;
a(); // foo
b(); // foo
trace(a != b); // false
Das folgende Beispiel veranschaulicht anhand zweier Arrays einen Vergleich nach Referenz:
var a:Array = [ 1, 2, 3 ];
var b:Array = [ 1, 2, 3 ];
trace(a); // 1,2,3
trace(b); // 1,2,3
trace(a != b); // true
a = b;
trace(a); // 1,2,3
trace(b); // 1,2,3
trace(a != b); // false
Siehe auch
Verwendung
| expression instanceof function |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet aus, ob die Prototypkette eines Ausdrucks das Prototypobjekt für function enthält.
Der instanceof-Operator ist aus Gründen der Abwärtskompatibilität mit ECMAScript Edition 3 weiterhin vorhanden,
kann aber auch von erfahrenen Programmierern eingesetzt werden, die die Prototyp-Vererbung mit Konstruktorfunktionen statt Klassen verwenden möchten.
Mit dem Operator is können Sie überprüfen, ob ein Objekt ein Mitglied eines bestimmten Datentyps ist.
Bei der Verwendung von Klassen ist der Operator instanceof vergleichbar mit dem Operator is, da die Prototypkette einer Klasse sämtliche übergeordneten Klassen enthält.
Schnittstellen sind jedoch nicht in Prototypketten enthalten. Daher führt der Operator instanceof immer zum Ergebnis false, wenn er mit Schnittstellen verwendet wird.
Der Operator is führt hingegen zum Ergebnis true, wenn ein Objekt einer Klasse angehört, die die angegebene Schnittstelle implementiert.
Hinweis: Der ActionScript-Operator is ist ein Äquivalent des Java-Operators instanceof.
Operanden
| expression:Object —
Das Objekt, das die auszuwertende Prototypkette enthält.
|
| function:Object —
Ein Funktionsobjekt (oder eine Klasse).
|
Ergebnis
| Boolean — Gibt true zurück, wenn die Prototypkette von expression das Prototypobjekt für function enthält, andernfalls false. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispielcode wird eine Instanz der Sprite-Klasse mit der Bezeichnung
mySprite erstellt und mit dem Operator
instanceof überprüft, ob
die Prototypkette von
mySprite die Prototypobjekte der Klassen Sprite und DisplayObject enthält.
Das Ergebnis ist
true für die Klassen Sprite und DisplayObject, da sich die Prototypobjekte für Sprite und DisplayObject in der Prototypkette von
mySprite befinden.
var mySprite:Sprite = new Sprite();
trace(mySprite instanceof Sprite); // true
trace(mySprite instanceof DisplayObject); // true
Im folgenden Beispiel wird anhand der Schnittstelle IBitmapDrawable demonstriert, dass der Operator
instanceof nicht mit Schnittstellen verwendet werden kann.
Der Operator
is führt zum Ergebnis
true, da die Klasse DisplayObject (eine übergeordnete Klasse der Klasse Sprite ) die Schnittstelle IBitmapDrawable implementiert.
var mySprite:Sprite = new Sprite();
trace(mySprite instanceof IBitmapDrawable); // false
trace(mySprite is IBitmapDrawable); // true
Siehe auch
Verwendung
| expression1 is expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet aus, ob ein Objekt mit einem bestimmten Datentyp, einer Klasse oder Schnittstelle kompatibel ist.
Verwenden Sie für Vergleiche des Datentyps den Operator is anstelle des Operators instanceof. Sie können auch den Operator is verwenden, um zu überprüfen, ob ein Objekt ein Schnittstelle implementiert.
Ergebnis
| Boolean — Der Wert true, wenn expression1 mit einem bzw. einer in expression2 angegebenen Datentyp, Klasse oder Schnittstelle kompatibel ist, andernfalls false. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispielcode wird eine Instanz der Sprite-Klasse mit der Bezeichnung
mySprite erstellt und mit dem Operator
is überprüft, ob
mySprite eine Instanz der Sprite- und DisplayObject-Klassen ist und ob es die IEventDispatcher-Schnittstelle implementiert.
import flash.display.*;
import flash.events.IEventDispatcher;
var mySprite:Sprite = new Sprite();
trace(mySprite is Sprite); // true
trace(mySprite is DisplayObject); // true
trace(mySprite is IEventDispatcher); // true
Siehe auch
Verwendung
| expression1 <</b> expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Vergleicht zwei Ausdrücke und stellt fest, ob expression1
kleiner ist als expression2. Ist dies der Fall, lautet das Ergebnis true.
Wenn expression1 größer oder gleich expression2 ist, lautet das Ergebnis false.
Wenn beide Operanden den Datentyp String aufweisen, werden die Operanden in alphabetischer Reihenfolge ausgewertet.
Großbuchstaben haben Vorrang vor Kleinbuchstaben.
Andernfalls werden die Operanden zunächst in Zahlen umgewandelt und dann verglichen.
Operanden
| expression1:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
| expression2:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
Ergebnis
| Boolean — Der Wert true, wenn expression1 kleiner als expression2 ist, andernfalls false. |
Beispiel
Verwendung von Beispielen
Die folgenden Beispiele veranschaulichen die Ergebnisse
true und
false bei Vergleichen von Zahlen und Zeichenfolgen:
trace(5 < 10); // true
trace(2 < 2); // false
trace(10 < 3); // false
trace("Allen" < "Jack"); // true
trace("Jack" < "Allen"); // false
trace("11" < "3"); // true
trace("11" < 3); // false (numeric comparison)
trace("C" < "abc"); // true
trace("A" < "a"); // true
Verwendung
| expression1 <= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Vergleicht zwei Ausdrücke und stellt fest, ob expression1 kleiner oder gleich expression2 ist.
Falls ja, lautet das Ergebnis true. Wenn expression1 größer expression2 ist, lautet das Ergebnis false.
Wenn beide Operanden den Datentyp String aufweisen, werden die Operanden in alphabetischer Reihenfolge ausgewertet. Großbuchstaben haben Vorrang vor Kleinbuchstaben. Andernfalls werden die Operanden zunächst in Zahlen umgewandelt und dann verglichen.
Operanden
| expression1:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
| expression2:Object —
Ein String, eine Ganzzahl oder eine Gleitkommazahl.
|
Ergebnis
| Boolean — Der Wert true, wenn expression1 kleiner oder gleich expression2 ist, andernfalls false. |
Beispiel
Verwendung von Beispielen
Die folgenden Beispiele veranschaulichen die Ergebnisse
true und
false bei Vergleichen von Zahlen und Zeichenfolgen:
trace(5 <= 10); // true
trace(2 <= 2); // true
trace(10 <= 3); // false
trace("Allen" <= "Jack"); // true
trace("Jack" <= "Allen"); // false
trace("11" <= "3"); // true
trace("11" <= 3); // false (numeric comparison)
trace("C" <= "abc"); // true
trace("A" <= "a"); // true
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Kennzeichnet den Beginn eines Skriptkommentars. Text, der zwischen dem Kommentartrennzeichen (// und dem Zeilenendezeichen steht, wird als Kommentar interpretiert und ignoriert.
Verwenden Sie dieses Trennzeichen für einzeilige Kommentare. Für Kommentare in mehreren aufeinander folgenden Zeilen verwenden Sie die Trennzeichen /* und */.
Operanden
| comment:* —
Beliebige Zeichen.
|
Beispiel
Verwendung von Beispielen
Das folgende Beispiel enthält einen einzeiligen Kommentar:
// Any text following a line comment delimiter is ignored during compilation
Siehe auch
Verwendung
| expression1 && expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt expression1 zurück, wenn es false ist oder in false umgewandelt werden kann, andernfalls expression2. Beispiele für Werte, die in false konvertiert werden können, sind 0, NaN, null und undefined.
Wenn Sie einen Funktionsaufruf als expression2 verwenden, wird die Funktion nicht aufgerufen, solange expression1 den Wert false ergibt.
Wenn beide Operanden vom Typ Boolean sind, ist das Ergebnis nur dann true, wenn beide Operanden true sind. Dies
wird in der folgenden Tabelle verdeutlicht:
| Ausdruck |
Auswertung |
true && true |
true |
true && false |
false |
false && false |
false |
false && true |
false |
Operanden
| expression1:* —
Ein Wert oder Ausdruck beliebigen Typs.
|
| expression2:* —
Ein Wert oder Ausdruck beliebigen Typs.
|
Ergebnis
| * — Ein Boolean-Wert, wenn beide Operanden vom Typ Boolean sind. Andernfalls ist das Ergebnis der Wert eines Ausdrucks. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird anhand des logischen AND-Operators (
&&) ermittelt, ob ein Spieler das Spiel gewonnen hat. Die Variablen
turns und
score werden jedes Mal aktualisiert, wenn ein Spieler an der Reihe ist oder wenn er während des Spiels Punkte macht. Das folgende Skript zeigt "You Win the Game!" an, wenn der Spieler in drei oder weniger Spielzügen 75 Punkte erreicht.
var turns:Number = 2;
var score:Number = 77;
if ((turns <= 3) && (score >= 75)) {
trace("You Win the Game!");
} else {
trace("Try Again!");
}
Siehe auch
Verwendung
| expression1 &&= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 && expression2 zu. Die beiden folgenden Anweisungen sind beispielsweise gleichwertig:
x &&= y;
x = x && y;
Operanden
| expression1:* —
Ein Wert beliebigen Typs.
|
| expression2:* —
Ein Wert beliebigen Typs.
|
Ergebnis
| * — Ein Boolean-Wert, wenn beide Operanden dem Datentyp Boolean angehören. Andernfalls ist das Ergebnis der Wert eines der beiden Ausdrücke. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird eine Variable namens
myTag geändert, wenn die Variable nicht als
false ausgewertet wird. Dabei wird ausgenutzt, dass der logische AND-Operator (
&&) den Wert
expression1 zurückgibt, wenn
expression1 als
false ausgewertet wird; andernfalls wird der Wert
expression2 zurückgegeben.
Wenn
myTag bereits einen Wert enthält, der als
true ausgewertet wird, wird
myVar geändert, sodass es einem XML-Tag ähnelt. Wenn
myVar jedoch einen Wert enthält, der als
false ausgewertet wird (wie etwa die Werte
null,
""(leerer String) und
undefined ), wird
myVar nicht geändert.
var myVar:String = 'tag';
myVar &&= "<" + myVar + "/>";
trace (myVar); // output: <tag/>
Die gleiche Wirkung hat mithilfe einer
if-Anweisung erzielt werden (siehe folgendes Beispiel):
var myVar:String = 'tag';
if (myVar != '') {
myVar = "<" + myVar + "/>";
}
trace (myVar); // output: <tag/>
Eine
if-Anweisung bietet den Vorteil, dass der Code leichter zu lesen ist; dagegen bietet der logische AND-Zuweisungsoperator (
&&=) den Vorteil, dass für einen gegebenen Datentyp nicht der exakte Standardwert angegeben werden muss.
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Kehrt den Boolean-Wert einer Variablen oder eines Ausdrucks um. Ist expression eine Variable mit dem absoluten bzw. konvertierten Wert von true, so hat !expression den Wert false. Wenn der Ausdruck x && y den Wert false annimmt, nimmt der Ausdruck !(x && y) den Wert true an.
Die folgenden Ausdrücke veranschaulichen die Verwendung des logischen NOT-Operators (!):
!true gibt false zurück.
!false gibt true zurück.
Operanden
| expression:Boolean —
Ein Ausdruck oder eine Variable, die einen Boolean-Wert annimmt.
|
Ergebnis
| Boolean — Das Boolean-Ergebnis der logischen Operation. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird die Variable
happy auf
false gesetzt.
Die Bedingung
if wertet die Bedingung
!happy aus. Wenn die Bedingung
true lautet,
gibt die
trace()-Anweisung einen String aus.
var happy:Boolean = false;
if (!happy) {
trace("don't worry, be happy"); // don't worry, be happy
} Die
trace-Anweisung wird ausgeführt, da
!false gleich
true ist.
Siehe auch
Verwendung
| expression1 || expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt expression1 zurück, wenn es true ist oder in true umgewandelt werden kann, andernfalls expression2.
Wenn Sie einen Funktionsaufruf als expression2 verwenden, wird die Funktion nicht aufgerufen, solange expression1 den Wert true ergibt.
Wenn beide Operanden dem Typ Boolean angehören, ist das Ergebnis nur dann true, wenn beide Ausdrücke true sind. Das Ergebnis ist nur dann false, wenn beide Ausdrücke als false ausgewertet werden. Dies wird in der folgenden Tabelle verdeutlicht:
| Ausdruck |
Auswertung |
true || true |
true |
true || false |
true |
false || false |
false |
false || true |
true |
Operanden
| expression1:* —
Ein Wert beliebigen Typs.
|
| expression2:* —
Ein Wert beliebigen Typs.
|
Ergebnis
| * — Ein Boolean-Wert, wenn beide Operanden dem Datentyp Boolean angehören. Andernfalls ist das Ergebnis der Wert eines der beiden Ausdrücke. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird der logische OR-Operator (
||) in einer
if-Anweisung verwendet. Der zweite Ausdruck wird als
true, ausgewertet, sodass das Endergebnis ebenfalls
true lautet:
var a:Number = 10;
var b:Number = 250;
var start:Boolean = false;
if ((a > 25) || (b > 200) || (start)) {
trace("the logical OR test passed"); // the logical OR test passed
}
Es wird die Meldung "the logical OR test passed" angezeigt, da eine der Bedingungen in der
if-Anweisung "wahr" (
b > 200) lautet.
Das folgende Beispiel veranschaulicht, wie die Verwendung eines Funktionsaufrufs für den zweiten Operanden zu unerwarteten Ergebnissen führen kann. Wenn der Ausdruck links neben dem Operator true ergibt, wird dieses Ergebnis ohne Auswertung des Ausdrucks auf der rechten Seite zurückgegeben (d. h. die Funktion fx2() wird nicht aufgerufen).
function fx1():Boolean {
trace("fx1 called");
return true;
}
function fx2():Boolean {
trace("fx2 called");
return true;
}
if (fx1() || fx2()) {
trace("IF statement entered");
}
Siehe auch
Verwendung
| expression1 ||= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 || expression2 zu. Die beiden folgenden Anweisungen sind beispielsweise gleichwertig:
x ||= y;
x = x || y;
Operanden
| expression1:* —
Ein Wert beliebigen Typs.
|
| expression2:* —
Ein Wert beliebigen Typs.
|
Ergebnis
| * — Ein Boolean-Wert, wenn beide Operanden dem Datentyp Boolean angehören. Andernfalls ist das Ergebnis der Wert eines der beiden Ausdrücke. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird einer zuvor deklarierten Variablen namens
myVar ein Standardwert zugewiesen. Dabei wird ausgenutzt, dass der logische OR-Operator (
||) den Wert
expression1 zurückgibt, wenn
expression1 als
true ausgewertet wird; andernfalls wird der Wert
expression2 zurückgegeben.
Wenn
myVar bereits einen Wert enthält, der als
true ausgewertet wird, wird
myVar nicht geändert. Wenn
myVar jedoch einen Wert enthält, der als
false ausgewertet wird (wie etwa die Werte
null,
""(leerer String) und
undefined ), wird
myVar der Wert
"default" zugewiesen.
Siehe auch
Verwendung
| expression1 % expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Berechnet den Rest einer Division von expression1 geteilt durch expression2. Wenn einer der Operanden nicht numerisch ist, versucht der Modulo-Operator (%), ihn in eine Zahl umzuwandeln.
Das Vorzeichen des Modulo-Ergebnisses entspricht dem Vorzeichen des Dividenden (also der ersten Zahl). Sowohl -4 % 3 als auch -4 % -3 ergeben beispielsweise beide -1.
Operanden
| expression1:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird. Ein String, der nur numerische Zeichen enthält, wird als Zahl ausgewertet.
|
| expression2:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird. Ein String, der nur numerische Zeichen enthält, wird als Zahl ausgewertet.
|
Ergebnis
| Number — Das Ergebnis der arithmetischen Operation. |
Beispiel
Verwendung von Beispielen
Bei den folgenden numerischen Beispielen wird der Modulo-Operator verwendet (
%):
trace(12 % 5); // 2
trace(4.3 % 2.1); // 0.0999999999999996
trace(4 % 4); // 0
Die erste Anzeige gibt statt 12/5 bzw. 2.4 den Wert 2 zurück, da der Modulo-Operator
% nur den Rest auswertet. Bedingt durch die Beschränkungen bei der Genauigkeit von Gleitkommaoperationen bei binären Berechnungsverfahren lautet die zweite Anzeige 0,0999999999999996 anstatt der erwarteten 0,1.
Siehe auch
Verwendung
| expression1 %= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 % expression2 zu. Die folgenden beiden Anweisungen sind gleichwertig:
x %= y;
x = x % y;
Operanden
| expression1:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| Number — Das Ergebnis der arithmetischen Operation. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird der Wert 4 der Variablen
a zugewiesen:
var a:Number = 14;
var b:Number = 5;
a %= b;
trace(a); // 4
Siehe auch
Verwendung
| expression1 * expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Multipliziert zwei numerische Ausdrücke. Wenn beide Ausdrücke Ganzzahlen sind, ist das Produkt eine Ganzzahl. Wenn einer oder beide Ausdrücke Gleitkommazahlen sind, ist das Produkt eine Gleitkommazahl.
Operanden
| expression1:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| Number — Eine Ganzzahl oder eine Gleitkommazahl. |
Beispiel
Verwendung von Beispielen
Die folgende Anweisung multipliziert die Ganzzahlen 2 und 3, das Ergebnis ist die Ganzzahl 6:
Die folgende Anweisung multipliziert die Gleitkommazahlen 2.0 und 3.1416, das Ergebnis ist die Gleitkommazahl 6.2832:
trace(2.0 * 3.1416); // 6.2832
Siehe auch
Verwendung
| expression1 *= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 * expression2 zu. Beispielsweise sind die beiden folgenden Ausdrücke gleichwertig:
x *= y
x = x * y
Operanden
| expression1:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| Number — Beim Wert von expression1 * expression2. Wenn ein Ausdruck nicht in einen numerischen Wert umgewandelt werden kann, wird NaN (Not a Number - keine Zahl) zurückgegeben. |
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird der Wert 50 der Variablen
a zugewiesen:
var a:Number = 5;
var b:Number = 10;
trace(a *= b); // 50
In der zweiten und dritten Zeile des folgenden Beispiels werden die Ausdrücke hinter dem Gleichheitszeichen berechnet und das Ergebnis den Variablen
c und
d zugewiesen.
var i:Number = 5;
var c:Number = 4 - 6;
var d:Number = i + 2;
trace(c *= d); // -14
Siehe auch
Verwendung
| namespace::property
namespace::method()
namespace::xmlObject.property
namespace::xmlObject.@attribute |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Identifiziert den Namespace einer Eigenschaft, einer Methode, einer XML-Eigenschaft oder eines XML-Attributs.
Operanden
| namespace:Object —
Der Namespace zur Identifizierung.
|
| propertyName:Object —
Die zu identifizierende Eigenschaft, Methode oder XML-Eigenschaft bzw. das zu identifizierende XML-Attribut.
|
Beispiel
Verwendung von Beispielen
Das folgende Beispiel verwendet den
::-Operator, um zwei Methoden zu identifizieren, die den gleichen Namen in zwei unterschiedlichen Namespaces haben:
public class NamespaceExample extends Sprite {
public namespace French;
public namespace Hawaiian;
public function NamespaceExample() {
trace(Hawaiian::hello()); // aloha
trace(French::hello()); // bonjour
}
Hawaiian function hello():String {
return "aloha";
}
French function hello():String {
return "bonjour";
}
}
Das folgende Beispiel verwendet den
::-Operator, um XML-Eigenschaften mit den angegeben Namespaces zu identifizieren:
var soap:Namespace = new Namespace("http://schemas.xmlsoap.org/wsdl/soap/");
var w:Namespace = new Namespace("http://weather.example.org/forecast");
var myXML:XML =
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<soap:Body>
<w:forecast xmlns:w="http://weather.example.org/forecast">
<w:city>Quito</w:city>
<w:country>Ecuador</w:country>
<date>2006-01-14</date>
</w:forecast>
</soap:Body>
</soap:Envelope>;
trace(myXML.soap::Body.w::forecast.w::city); // Quito
Siehe auch
Verwendung
| new constructor(parameters) |
| Player-Version : | Flash Player 5 |
Dieser Operator instanziiert eine Klasseninstanz. Der Operator new kann mit einer Klasse oder einer Variablen des Typs Class verwendet werden, um eine Instanz einer Klasse zu erstellen.
Im Allgemeinen wird der Operator new mit einem Klassenobjekt verwendet, um eine Instanz einer Klasse zu erstellen. Beispielsweise erstellt die Anweisung new Sprite() eine Instanz der Sprite-Klasse.
Darüber hinaus kann einer Klasse mit dem Operator new ein eingebetteter Bestand zugewiesen werden. Dies kann eine Grafik, ein Sound oder eine Schrift sein, die in einer SWF-Datei kompiliert ist.
Jeder eingebettete Bestand wird durch eine einmalige eingebettete Bestandklasse repräsentiert. Um auf einen eingebetteten Bestand zugreifen zu können, müssen Sie den Operator new verwenden, damit die zugewiesene Klasse instanziiert wird.
Anschließend können Sie geeignete Methoden und Eigenschaften der eingebetteten Bestandsklasse aufrufen, um den eingebetteten Bestand zu bearbeiten.
Wenn Sie Klassen mit Function-Objekten anstelle des Schlüsselworts class definieren möchten, können Sie mit dem Operator new Objekte basierend auf Konstruktorfunktionen erstellen.
Verwechseln Sie Konstruktorfunktionen jedoch nicht mit den Konstruktormethoden einer Klasse. Eine Konstruktorfunktion ist ein Function-Objekt, das mit dem Schlüsselwort function definiert wird, das aber kein Teil einer Klassendefinition ist.
Wenn Sie Konstruktorfunktionen zum Erstellen von Objekten verwenden, müssen Sie die prototype-Vererbung anstelle der class-Vererbung verwenden.
Operanden
| constructor:* —
Eine Klasse, eine Funktion oder eine Variable, die einen Wert des Typs Class aufnimmt.
|
| parameters:* —
Ein oder mehrere (durch Kommata getrennte) Parameter.
|
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird zunächst die Klasse
Book erstellt und dann werden mit dem Operator
new die Objekte
book1 und
book2 erstellt.
class Book {
var bName:String;
var bPrice:Number;
public function Book(nameParam:String, priceParam:Number){
bName = nameParam;
bPrice = priceParam;
}
}
var book1:Book = new Book("Confederacy of Dunces", 19.95);
var book2:Book = new Book("The Floating Opera", 10.95);
trace(book1); // [object Book]
In dem folgenden Beispiel wird mit dem Operator
new eine Instanz der Array-Klasse mit 18 Elementen erstellt:
var golfCourse:Array = new Array(18);
Siehe auch
Verwendung
| object = {name1 : value1, name2 : value2,... nameN : valueN} |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Erstellt ein neues Objekt und initialisiert es mit den angegebenen Eigenschaftspaaren aus name und value. Die Verwendung dieses Operators entspricht dem Aufruf von new Object und dem anschließendem Zuweisen der Eigenschaftspaare mithilfe des Zuweisungs-Operators. Der Prototyp des neu erstellten Objekts wird allgemein als Object-Objekt bezeichnet.
Mithilfe dieses Operators können auch Blöcke von aufeinander folgenden Codezeilen markiert werden, die in Anweisungen und Funktionen zur Ablaufsteuerung (for, while, if, else, switch) eingebunden sind.
Operanden
| object:Object —
Das zu erstellende Objekt.
|
| name1,2,...N:Object —
Die Namen der Eigenschaften.
|
| value1,2,...N:Object —
Die Werte der einzelnen name-Eigenschaften.
|
Ergebnis
Beispiel
Verwendung von Beispielen
In der ersten Zeile des folgenden Codes wird mit dem Objektinitialisierungs-Operator ({}) ein leeres Objekt erstellt; in der zweiten Zeile wird mit einer Konstruktorfunktion ein neues Objekt erstellt:
var object:Object = {};
var object:Object = new Object();
In dem folgenden Beispiel wird ein Objekt namens
account erstellt, und die Eigenschaften
name,
address,
city,
state,
zip und
balance werden mit den entsprechenden Werten initialisiert:
var account:Object = {name:"Adobe Systems, Inc.", address:"601 Townsend Street", city:"San Francisco", state:"California", zip:"94103", balance:"1000"};
for (i in account) {
trace("account."+i+" = "+account[i]);
}
Im folgenden Beispiel wird die Verschachtelung von Array- und Objektinitialisierung gezeigt:
var person:Object = {name:"Gina Vechio", children:["Ruby", "Chickie", "Puppa"]};
In dem folgenden Beispielcode werden die Informationen aus dem obigen Beispiel verwendet und anhand einer Konstruktorfunktion das gleiche Ergebnis erzielt:
var person:Object = new Object();
person.name = "Gina Vechio";
person.children = new Array();
person.children[0] = "Ruby";
person.children[1] = "Chickie";
person.children[2] = "Puppa";
Siehe auch
Verwendung
| (expression1[, expression2]) (expression1, expression2) function(parameter1,..., parameterN) |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Führt eine Gruppierungsoperation mit mindestens einem Parameter bzw. eine sequentielle Auswertung von Ausdrücken durch oder umgibt mindestens einen Parameter und übergibt diesen als Argument an eine Funktion, die vor den runden Klammern steht.
Verwendung 1: Legt die Reihenfolge fest, in der die Operatoren ausgeführt werden. Runde Klammern setzen die automatische Vorrangreihenfolge außer Kraft und bewirken, dass die Ausdrücke in Klammern zuerst ausgewertet werden. Bei verschachtelten Klammern wird der Inhalt der inneren Klammern vor dem Inhalt der äußeren Klammern ausgewertet.
Verwendung 2: Wertet eine Reihe von durch Kommata abgetrennten Ausdrücken der Reihe nach aus und gibt das Ergebnis des endgültigen Ausdrucks zurück.
Verwendung 3: Umgibt mindestens einen Parameter und übergibt diesen an die Funktion, die vor den runden Klammern steht.
Operanden
| expression1:Object —
Ein Ausdruck, der Zahlen, Strings, Variablen oder Text enthalten kann.
|
| expression2:Object —
Ein Ausdruck, der Zahlen, Strings, Variablen oder Text enthalten kann.
|
| function:Function —
Die Funktion, die an dem Inhalt der runden Klammern ausgeführt werden soll.
|
| parameter1...parameterN:Object —
Eine Reihe von Parametern, die ausgeführt werden, bevor die Ergebnisse als Argumente an die Funktion außerhalb der runden Klammern übergeben werden.
|
Beispiel
Verwendung von Beispielen
Verwendung 1: Die folgenden Anweisungen veranschaulichen die Verwendung von runden Klammern zur Steuerung der Reihenfolge, in der Ausdrücke ausgeführt werden:
trace((2 + 3) * (4 + 5)); // 45
trace(2 + (3 * (4 + 5))); // 29
trace(2 + (3 * 4) + 5); // 19
trace(2 + (3 * 4) + 5); // 19
Verwendung 2: In dem folgenden Beispiel wird zunächst die Funktion
foo() ausgewertet und dann die Funktion
bar(). Anschließend wird das Ergebnis des Ausdrucks
a + b zurückgegeben:
var a:Number = 1;
var b:Number = 2;
function foo() {
a += b;
}
function bar() {
b *= 10;
}
trace((foo(), bar(), a + b)); // 23
Verwendung 3: Das folgende Beispiel veranschaulicht die Verwendung von runden Klammern in Verbindung mit Funktionen:
var today:Date = new Date();
trace(today.getFullYear()); // outputs current year
function traceParameter(param):void {
trace(param);
}
traceParameter(2 * 2); // 4
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet einen Ausdruck in einem ECMAScript für XML (E4X) XML-Konstrukt aus. Beispielsweise identifiziert myXML.(lastName == "Smith") XML-Elemente mit der Bezeichnung lastName und dem Wert "Smith". Das Ergebnis ist ein XMLList-Objekt,
Operanden
| myXML:* —
Ein XML- oder XMLList-Objekt.
|
| expression:* —
Der Ausdruck definiert die übereinstimmenden Elemente.
|
Ergebnis
| XMLList — Das durch die Klammern angegebene XMLList-Objekt. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird gezeigt, wie Klammern dazu eingesetzt werden, Elemente und Attribute zu identifizieren:
var myXML:XML =
<employees>
<employee id = "42">
<firstName>Joe</firstName>
<lastName>Smith</lastName>
</employee>
<employee id = "43">
<firstName>Susan</firstName>
<lastName>Jones</lastName>
</employee>
<employee id = "44">
<firstName>Anne</firstName>
<lastName>Smith</lastName>
</employee>
</employees>;
trace(myXML.employee.(lastName == "Smith").@id.toXMLString());
// 42
// 44
trace(myXML.employee.(Number(@id) > 42).@id.toXMLString());
// 43
// 44
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wenn Sie diesen Operator vor und nach einem String eingeben, kennzeichnen Sie, dass es sich dabei um einen Literalwert handelt, der als ein regulärer Ausdruck (RegExp) betrachtet wird und nicht um einen String, eine Variable oder ein anderes ActionScript-Element. Achten Sie jedoch darauf, dass zwei aufeinander folgende Schrägstriche (//) den Beginn eines Kommentars kennzeichnen.
Operanden
| pattern:String —
Eine Reihenfolge von einem oder mehreren Zeichen, mit der das Muster des regulären Ausdrucks definiert wird.
|
| flags:String —
Eine Reihenfolge von null oder mehr der folgenden Zeichen: g (für das global-Flag), i (für das ignoreCase-Flag), s (für das dotall-Flag), x (für das extended-Flag).
|
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird der Schrägstrich (/) verwendet, um den Wert einer Variablen des Typs RegExp einzurichten (das
i-Flag ist gesetzt, um die Groß-/Kleinschreibung bei der Prüfung auf Übereinstimmung zu ignorieren):
var myRegExp:RegExp = /foo-\d+/i;
trace(myRegExp.exec("ABC Foo-32 def.")); // Foo-32
Siehe auch
Verwendung
| expression1 === expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Überprüft zwei Ausdrücke auf Gleichheit, führt aber keine automatische Datenkonvertierung durch.
Das Ergebnis ist true, wenn die beiden Ausdrücke, einschließlich Datentypen, gleich sind.
Der strikte Gleichheits-Operator (===) arbeitet in dreierlei Hinsicht genau wie der Gleichheits-Operator (==):
- Zahlen und Boolean-Werte werden anhand ihres Werts verglichen und gelten als gleich, wenn sie den gleichen Wert haben.
- String-Ausdrücke sind gleich, wenn sie dieselbe Anzahl von Zeichen enthalten und die Zeichen identisch sind.
- Variablen, die Objekte, Arrays und Funktionen darstellen, werden anhand ihrer Referenzen verglichen. Zwei Variablen sind gleich, wenn sie auf dasselbe Objekt, dasselbe Array oder dieselbe Funktion verweisen. Zwei separate Arrays gelten nie als gleich, selbst wenn sie dieselbe Anzahl von Elementen aufweisen.
Der strikte Gleichheits-Operator (
===) unterscheidet sich in nur zwei Dingen vom Gleichheits-Operator (
==):
- Der strikte Gleichheitsoperator führt die automatische Datenumwandlung nur für numerische Typen durch (Number, int unduint).
Der Ungleichheitsoperator führt hingegen die automatische Datenumwandlung für alle Grunddatentypen durch.
- Beim Vergleich von
null und undefined gibt der strikte Gleichheits-Operator den Wert false zurück.
Der strikte Gleichheits-Operator erzeugt in ActionScript 3.0 in zwei Fällen andere Ergebnisse als in ActionScript 2.0. In diesen Fällen geht es um Grundwerte (z. B.
var x:Number = 1) mit Grundobjekten (z. B.
var x:Number = new Number(1)).
Dies liegt daran, dass ActionScript 3.0 den Unterscheid zwischen Grundwerten und Wrapper-Grundobjekten entfernt.
Zum einen geben Vergleiche zwischen Grundwerten und Grundobjekten, die den gleichen Wert enthalten, in ActionScript 3.0 true, und in früheren Versionen von ActionScript false zurück. In früheren Versionen ist der Datentyp eines Grundwerts entweder Boolean, Number oder String, während der Datentyp eines Grundobjekts immer Object ist und nicht Boolean, Number oder String.
Eine praktische Auswirkung dieses Unterschieds besteht darin, dass der folgende Code in früheren Versionen von ActionScript als false ausgewertet wird, da die Datentypen der Operanden nicht übereinstimmen, das Ergebnis in ActionScript 3.0 jedoch true lautet, da die Grundwerte als entweder Boolean, Number, int, uint oder String typisiert sind, unabhängig davon, ob sie sich in einem Objekt befinden.
var num1:Number = 1;
var num2:Number = new Number(1);
trace(num1 === num2); // true in ActionScript 3.0, false in ActionScript 2.0
Zum anderen geben Vergleiche zwischen zwei Grundobjekten, die den gleichen Wert enthalten, in ActionScript 3.0
true, und in früheren Versionen von ActionScript
false zurück.
var num1:Number = new Number(1);
var num2:Number = new Number(1);
trace(num1 == num2); // true in ActionScript 3.0, false in ActionScript 2.0
trace(num1 === num2); // true in ActionScript 3.0, false in ActionScript 2.0
Dies liegt daran, dass in früheren Versionen von ActionScript beide Variablen zum Datentyp Object gehören, sodass sie über den Verweis verglichen werden und das Ergebnis sowohl für Gleichheits- als auch für strikte Gleichheits-Operatoren
false lautet.
In ActionScript 3.0 jedoch gehören beide Variablen zum Datentyp Number, sodass sie über den Wert verglichen werden und das Ergebnis sowohl für Gleichheits- als auch strikte Gleichheits-Operatoren
true lautet.
Operanden
| expression1:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
| expression2:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
Ergebnis
| Boolean — Das Boolean-Ergebnis des Vergleichs. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird veranschaulicht, dass der strikte Gleichheits-Operator (
===) dem Gleichheits-Operator (
==) gleicht, wenn Wert und Datentypen übereinstimmen:
var string1:String = "5";
var string2:String = "5";
trace(string1 == string2); // true
trace(string1 === string2); // true
Im folgenden Beispiel wird veranschaulicht, dass der strikte Gleichheits-Operator den Datentyp String nicht in Number konvertiert - im Gegensatz zum Gleichheits-Operator (
==) :
// The equality (==) operator converts 5 to "5", but the strict equality operator does not
var string1:String = "5";
var num:Number = 5;
trace(string1 == num); // true
trace(string1 === num); // false
Im folgenden Beispiel wird veranschaulicht, dass der strikte Gleichheits-Operator im Gegensatz zum Gleichheits-Operator Boolean-Werte nicht in Zahlen konvertiert:
var num:Number = 1;
var bool:Boolean = true;
trace(num == bool); // true
trace(num === bool); // false
Im folgenden Beispiel wird veranschaulicht, dass der strikte Gleichheits-Operator die Datentypenint und uint konvertiert:
var num1:Number = 1;
var num2:int = 1;
var num3:uint = 1;
trace(num1 === num2); // true
trace(num1 === num3); // true
In dem folgenden Beispiel wird veranschaulicht, dass der strikte Gleichheits-Operator im Gegensatz zum Gleichheits-Operator
null und
undefined nicht als gleich betrachtet:
trace(null == undefined); // true
trace(null === undefined); // false
Siehe auch
Verwendung
| expression1 !== expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Prüft auf das genaue Gegenteil des strikten Gleichheits-Operators (===).
Der strikte Ungleichheits-Operator bewirkt das Gleiche wie der Ungleichheits-Operator, es werden jedoch nur die Datentypen int und uint umgewandelt.
Wenn expression1 gleich expression2 ist und die Datentypen übereinstimmen, lautet das Ergebnis false.
Der strikte Ungleichheits-Operator !==) arbeitet in dreierlei Hinsicht genau wie der Ungleichheits-Operator (!=):
- Zahlen und Boolean-Werte werden anhand ihres Werts verglichen und gelten als gleich, wenn sie den gleichen Wert haben.
- String-Ausdrücke sind gleich, wenn sie dieselbe Anzahl von Zeichen enthalten und die Zeichen identisch sind.
- Variablen, die Objekte, Arrays und Funktionen darstellen, werden anhand ihrer Referenzen verglichen. Zwei Variablen sind gleich, wenn sie auf dasselbe Objekt, dasselbe Array oder dieselbe Funktion verweisen. Zwei separate Arrays gelten nie als gleich, selbst wenn sie dieselbe Anzahl von Elementen aufweisen.
Der strikte Ungleichheits-Operator unterscheidet sich nur in zwei Dingen vom Ungleichheits-Operator (
!=):
- Der strikte Ungleichheitsoperator (
!==) führt die automatische Datenumwandlung nur für numerische Typen durch (Number, int und uint).
Der Ungleichheitsoperator (!=) führt hingegen die automatische Datenumwandlung für alle Grunddatentypen durch.
- Beim Vergleich von
null und undefined gibt der strikte Ungleichheits-Operator (!==) den Wert true zurück.
Operanden
| expression1:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
| expression2:Object —
Eine Zahl, ein String, ein Boolean-Wert, eine Variable, ein Objekt, ein Array oder eine Funktion.
|
Ergebnis
| Boolean — Das Boolean-Ergebnis des Vergleichs. |
Beispiel
Verwendung von Beispielen
Die Kommentare im folgenden Code zeigen den Rückgabewert von Operationen mit dem Gleichheits- (
==), dem strikten Gleichheits- (
===) und dem strikten Ungleichheits-Operator (
!==) an:
var s1:String = "5";
var s2:String = "5";
var s3:String = "Hello";
var n:Number = 5;
var b:Boolean = true;
trace(s1 == s2); // true
trace(s1 == s3); // false
trace(s1 == n); // true
trace(s1 == b); // false
trace(s1 === s2); // true
trace(s1 === s3); // false
trace(s1 === n); // false
trace(s1 === b); // false
trace(s1 !== s2); // false
trace(s1 !== s3); // true
trace(s1 !== n); // true
trace(s1 !== b); // true
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wenn Sie diesen Operator vor und nach einem String eingeben, kennzeichnen Sie, dass es sich dabei um einen Literalwert, d. h. um einen String, und nicht um eine Variable, einen numerischen Wert oder ein anderes ActionScript-Element handelt.
Operanden
| text:String —
Eine Sequenz bestehend aus null oder mehr Zeichen.
|
Beispiel
Verwendung von Beispielen
Im folgenden Beispiel wird durch Anführungszeichen (") angegeben, dass es sich beim Wert der Variablen
yourGuess um die Literalzeichenfolge
"Prince Edward Island" und nicht um den Namen einer Variablen handelt.
var yourGuess:String = "Prince Edward Island";
submit_btn.onRelease = function() { trace(yourGuess); };
// Prince Edward Island
Siehe auch
Verwendung
| -expression expression1 - expression2 |
| Player-Version : | Flash Player 9 |
Wird bei Negationen oder Subtraktionen verwendet.
Verwendung 1: In einer Negation kehrt dieser Operator das Vorzeichen des numerischen Ausdrucks um.
Verwendung 2: In einer Subtraktion führt der Operator eine arithmetische Subtraktion von zwei numerischen Ausdrücken durch, wobei expression2 von expression1 subtrahiert wird. Wenn beide Ausdrücke Ganzzahlen sind, ist die Differenz eine Ganzzahl. Wenn einer oder beide Ausdrücke Gleitkommazahlen sind, ist die Differenz eine Gleitkommazahl.
Operanden
| expression1:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| Number — Eine Ganzzahl oder eine Gleitkommazahl. |
Beispiel
Verwendung von Beispielen
Verwendung 1: Die folgende Anweisung kehrt das Vorzeichen des Ausdrucks 2 + 3 um:
Verwendung 2: Die folgende Anweisung subtrahiert die Ganzzahl 2 von der Ganzzahl 5:
Das Ergebnis ist die Ganzzahl 3.
Die folgende Anweisung subtrahiert die Gleitkommazahl (bzw. Gleitpunktzahl) 1.5 von der Gleitkommazahl 3.25:
trace(3.25 - 1.5); // 1.75
Das Ergebnis 1.75 ist wiederum eine Gleitkommazahl.
Siehe auch
Verwendung
| expression1 -= expression2 |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Weist expression1 den Wert von expression1 - expression2 zu. Die beiden folgenden Anweisungen sind beispielsweise gleichwertig:
x -= y ;
x = x - y;
String-Ausdrücke müssen in Zahlen umgewandelt werden, andernfalls wird NaN (Not a Number - keine Zahl) zurückgegeben.
Operanden
| expression1:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
| expression2:Number —
Eine Zahl oder ein Ausdruck, die bzw. der als Zahl ausgewertet wird.
|
Ergebnis
| Number — Das Ergebnis der arithmetischen Operation. |
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird eine Subtraktionszuweisung (
-= verwendet, um 10 von 5 zu subtrahieren und das Ergebnis der Variablen
x zuzuweisen:
var x:Number = 5;
var y:Number = 10;
x -= y;
trace(x); // -5
Das folgende Beispiel veranschaulicht die Umwandlung von Strings in Zahlen:
var x:String = "5";
var y:String = "10";
x -= y;
trace(x); // -5
Siehe auch
Verwendung
| [modifiers] var variableName:type function functionName():type { ... } function functionName(parameter1:type, ..., parameterN:type) [:type]{ ... } |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Dieser Operator wird für die Zuweisung eines Datentyps verwendet. Er gibt den Variablentyp, den Rückgabetyp einer Funktion oder den Parametertyp einer Funktion an. Bei Verwendung in einer Variablendeklaration oder Variablenzuweisung gibt dieser Operator den Typ der Variablen an. Bei Verwendung in einer Funktionsdeklaration oder Funktionsdefinition gibt dieser Operator den Ergebnistyp der Funktion an. Bei Verwendung mit einem Funktionsparameter in einer Funktionsdefinition gibt dieser Operator den erwarteten Variablentyp für diesen Parameter an.
Die Überprüfung des Datentyps findet immer zur Laufzeit statt. Ist der Compiler jedoch auf strikten Modus eingestellt, werden alle Datentypen auch während der Kompilierung überprüft. Bei einer Diskrepanz wird eine Fehlermeldung erzeugt. Diskrepanzen können während Zuweisungsoperationen, Funktionsaufrufen und während der Dereferenzierung von Klassenelementen mit dem Punkt-Operator (.) auftreten.
Zu den verwendbaren Typen gehören alle nativen Objekttypen, Klassen und benutzerdefinierte Schnittstellen sowie void. Die erkannten nativen Typen sind Boolean, Number, int, uint und String. Auch sämtliche integrierten Klassen werden als native Typen unterstützt.
Wenn Sie keinen Datentyp zuweisen, wird die Variable, der Rückgabewert der Funktion oder der Funktionsparameter als nicht typisiert angesehen. Dies bedeutet, der Wert kann einen beliebigen Datentyp annehmen.
Wenn Sie verdeutlichen möchten, dass die Verwendung eines nicht typisierten Werts beabsichtigt ist, können Sie das Asteriskzeichen (*) als Typanmerkung verwenden. Wenn das Asteriskzeichen als Typanmerkung verwendet wird, entspricht dies dem Nichttypisieren einer Variablen, eines Rückgabetyps einer Funktion oder eines Funktionsparameters.
Operanden
| variableName:* —
Ein Bezeichner für eine Variable.
|
| type:* —
Ein nativer Datentyp, benutzerdefinierter Klassenname oder Schnittstellenname.
|
| functionName:Function —
Ein Bezeichner für eine Funktion.
|
| parameter:* —
Ein Bezeichner für einen Funktionsparameter.
|
Beispiel
Verwendung von Beispielen
Verwendung 1: Im folgenden Beispiel wird eine als "public" definierte Variable vom Typ String mit dem Namen
userName deklariert und dieser Variablen ein leerer String zugewiesen:
var userName:String = "";
Verwendung 2: In dem folgenden Beispiel wird veranschaulicht, wie der Rückgabetyp einer Funktion durch das Definieren einer Funktion mit der Bezeichnung
randomInt() angegeben wird, die den Rückgabetyp int hat:
function randomInt(integer:int):int {
return Math.round(Math.random()*integer);
}
trace(randomInt(8));
Im folgenden Codebeispiel wird eine Funktion namens
squareRoot() definiert, die einen Parameter namens
val vom Typ Number besitzt und als Ergebnis die Quadratwurzel von
val, ebenfalls vom Typ Number, zurückgibt:
function squareRoot(val:Number):Number {
return Math.sqrt(val);
}
trace(squareRoot(121));
Siehe auch
Verwendung
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet expression aus und gibt eine Zeichenfolge zurück, die den Datentyp des Ausdrucks angibt.
Das Ergebnis ist auf sechs mögliche Strings beschränkt: boolean, function, number, object, string und xml.
Wenn Sie diesen Operator an einer Instanz einer benutzerdefinierten Klasse anwenden, ist das Ergebnis der String object.
Der typeof-Operator ist aus Gründen der Abwärtskompatibilität vorhanden. Verwenden Sie den is-Operator zur Überprüfung der Typenkompatibilität.
Operanden
| expression:Object —
Ein auszuwertendes Objekt.
|
Ergebnis
| String — Eine String-Darstellung des Typs von expression. In der folgenden Tabelle werden die Ergebnisse des Operators typeof für jeden Ausdruckstyp aufgeführt.
| Ausdruckstyp |
Ergebnis |
|
Array
|
object
|
|
Boolean
|
boolean
|
|
Function
|
function
|
|
int
|
number
|
|
Number
|
number
|
|
Object
|
object
|
|
String
|
string
|
|
uint
|
number
|
|
XML
|
xml
|
|
XMLList
|
xml
|
|
Beispiel
Verwendung von Beispielen
In dem folgenden Beispiel wird das Ergebnis der Verwendung von
typeof an verschiedenen Objekten und Werten veranschaulicht:
trace(typeof Array); // object
trace(typeof Date); // object
trace(typeof 3); // number
Das folgende Beispiel zeigt, dass der Datentyp eines Grundobjekts in ActionScript 3.0 immer gleich ist, unabhängig davon, ob Sie einen Literalwert zuweisen oder den Operator
new zum Erstellen eines Objekts verwenden.
Dies unterscheidet sich insofern von früheren Versionen von ActionScript, als dass der
typeof-Operator
object für die Variable
b zurückgibt:
var a:String = "sample";
var b:String = new String("sample");
trace(typeof a); // string
trace(typeof b); // string
Siehe auch
Verwendung
| Player-Version : | Flash Player 9 |
Wertet einen Ausdruck aus und verwirft dann dessen Wert und gibt undefined zurück. Der Operator void wird häufig in Vergleichsoperationen mit dem Gleichheits-Operator (== ) verwendet, um zu prüfen, ob Werte undefiniert sind.
Operanden
| expression:Object —
Ein auszuwertender Ausdruck.
|
Ergebnis
Siehe auch
Verwendung
| myXML= <{tagName} {attributeName} = {attributeValue}>{content}</{tagName}> |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Definiert ein XML-Tag in einem XML-Literal. Verwenden Sie den Schrägstrich /, um das schließende Tag zu definieren.
Operanden
| myXML:* —
Ein XML- oder XMLList-Objekt.
|
| tagName:* —
Ein Ausdruck, der den Namen eines XML-Tags auswertet.
|
| attributeName:* —
Ein Ausdruck, der den Namen eines XML-Attributs auswertet.
|
| attributeValue:* —
Ein Ausdruck, der den Wert eines XML-Attributs auswertet.
|
| content:* —
Ein Ausdruck, der den Inhalt eines XML-Tags auswertet.
|
Beispiel
Verwendung von Beispielen
Das folgende Beispiel zeigt, wie die Operatoren
< und
> zum Definieren eines XML-Literals verwendet werden:
var x:XML = <item id= "324">cola</item>;
Siehe auch
© 2004-2007 Adobe Systems Incorporated. All rights reserved.
Fri Oct 12 2007, 2:25 AM GMT-07:00
Aktuelle Seite: http://livedocs.adobe.com/flash/9.0_de/ActionScriptLangRefV3/operators.html