Paket | Oberste Ebene |
Klasse | public dynamic class Vector |
Vererbung | Vector Object |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Wie bei einem Array können Sie den Array-Zugriffsoperator ([]
) verwenden, um den Wert eines Vector-Elements festzulegen oder abzurufen. Außerdem stellen mehrere Vector-Methoden Mechanismen zum Festlegen und Abrufen von Elementwerten bereit. Dazu gehören push()
, pop()
, shift()
, unshift()
und andere. Die Eigenschaften und Methoden eines Vector-Objekts ähneln den Eigenschaften und Methoden eines Arrays, in den meisten Fällen sind sie sogar identisch. In den meisten Fällen, in denen Sie ein Array verwenden würden, dessen Elemente alle denselben Datentyp aufweisen, ist es empfehlenswert, stattdessen eine Vector-Instanz zu verwenden. Vector-Instanzen sind jedoch dichte Arrays, was bedeutet, dass an jeder Indexposition ein Wert (oder null
) vorhanden sein muss. Bei Array-Instanzen gilt diese Einschränkung nicht.
Der Basistyp des Vektors wird mithilfe der Suffix-Syntax des type-Parameters festgelegt. Die Syntax des type-Parameters ist eine Sequenz, die einen Punkt (.
), eine linke spitze Klammer (<
), einen Klassennamen, dann eine rechte spitze Klammer (>
) enthält, wie in diesem Beispiel angezeigt:
In der ersten Zeile des Beispiels wird die Variable v
als Vector.<String>-Instanz deklariert. Dies bedeutet, dass sie einen Vektor (ein Array) darstellt, der nur String-Instanzen enthält und von dem nur String-Instanzen abgerufen werden können. Die zweite Zeile erstellt eine Instanz des gleichen Vektor-Typs (ein Vektor, dessen Elemente alle String-Objekte sind) und weist ihn v
zu.
var v:Vector.<String>; v = new Vector.<String>();
Eine Variable, die mit dem Vector.<T>-Datentyp deklariert wurde, kann nur eine Vector-Instanz speichern, die mit dem gleichen Basistyp T
erstellt wurde. Beispiel: Ein durch den Aufruf von new Vector.<String>()
erstellter Vector kann keiner Variablen zugewiesen werden, die mit dem Vector.<int>-Datentyp deklariert wurde. Die Basistypen müssen genau übereinstimmen. Beispiel: Der folgende Code kann nicht kompiliert werden, da der Basistyp des Objekts nicht identisch mit dem deklarierten Basistyp der Variablen ist (obwohl Sprite eine Unterklasse von DisplayObject ist):
// This code doesn't compile even though Sprite is a DisplayObject subclass var v:Vector.<DisplayObject> = new Vector.<Sprite>();
Um einen Vektor mit dem Basistyp T
in einen Vektor mit einer Superklasse von T
zu konvertieren, verwenden Sie die globale Vector()
-Funktion.
Neben der Datentypbeschränkung unterscheidet sich die Vector-Klasse von der Array-Klasse noch durch weitere Beschränkungen:
- Ein Vector ist ein dichtes Array. Im Gegensatz zu einem Array, das Werte in den Indexpositionen 0 und 7 aufweisen kann, auch wenn keine Werte in den Indexpositionen 1 bis 7 vorhanden sind, muss ein Vektor einen Wert (oder
null
) in jeder Indexposition aufweisen. - Für einen Vektor kann wahlweise eine feste Länge angegeben werden, wobei dies bedeutet, dass die Anzahl der enthaltenen Elemente nicht geändert werden kann.
- Der Zugriff auf die Vector-Elemente ist begrenzt. Es kann kein Wert von einer Indexposition größer als das letzte Element (
length - 1
) gelesen werden. Es kann kein Wert festgelegt werden, der eine Indexposition von mehr als eins hinter der aktuellen letzten Indexposition aufweist (anders ausgedrückt, ein Wert kann nur an einer vorhandenen Indexposition oder an der Indexposition[length]
festgelegt werden).
Aufgrund seiner Beschränkungen bietet ein Vektor drei wichtige Vorteile gegenüber einer Array-Instanz, bei deren Elementen es sich ausschließlich um Instanzen einer Klasse handelt:
- Leistung: Bei einer Vector-Instanz erfolgen der Zugriff auf die Array-Elemente und die Iteration viel schneller als bei einem Array.
- Typsicherheit: Im strikten Modus kann der Compiler Datentypfehler erkennen. Datentypfehler treten beispielsweise auf, wenn einem Vektor ein Wert mit einem falschen Datentyp zugewiesen wird oder wenn beim Lesen eines Werts von einem Vektor der falsche Datentyp erwartet wird. Beachten Sie jedoch Folgendes: Wenn Sie einem Vektor mithilfe der
push()
- oderunshift()
-Methode Werte hinzufügen, werden die Datentypen der Argumente bei der Kompilierung nicht überprüft. Sie werden stattdessen zur Laufzeit überprüft. - Zuverlässigkeit: Die Laufzeit-Bereichsüberprüfung (oder Festlängenüberprüfung) erhöht die Zuverlässigkeit im Vergleich mit Arrays erheblich.
Verwandte API-Elemente
Eigenschaft | Definiert von | ||
---|---|---|---|
constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | ||
fixed : Boolean
Zeigt an, ob die length-Eigenschaft des Vectors geändert werden kann. | Vector | ||
length : uint
Der Bereich der gültigen Indexpositionen, die im Vector verfügbar sind. | Vector |
Methode | Definiert von | ||
---|---|---|---|
Erstellt einen Vector mit dem festgelegten Basistyp. | Vector | ||
Verkettet die in den Parametern angegebenen Vektoren mit den Elementen in diesem Vektor und erstellt einen neuen Vektor. | Vector | ||
Führt für jedes Element im Vector eine Testfunktion aus, bis ein Element erreicht wird, das für die festgelegte Funktion „false“ zurückgibt. | Vector | ||
Führt für jedes Element im Vector eine Testfunktion aus und erstellt einen neuen Vector für alle Elemente, die für die angegebene Funktion „true“ zurückgeben. | Vector | ||
Führt für jedes Element im Vector eine Funktion aus. | Vector | ||
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde. | Object | ||
Sucht nach einem Element im Vector und gibt die Indexposition des Elements zurück. | Vector | ||
Fügen Sie ein einzelnes Element in den Vektor ein. | Vector | ||
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde. | Object | ||
Wandelt die Elemente in einem Vector in Strings um, fügt zwischen ihnen das festgelegte Trennzeichen ein, verkettet die Elemente und gibt den Ergebnisstring zurück. | Vector | ||
Sucht nach einem Element im Vector, wobei von der festgelegten Indexposition nach hinten gesucht wird und gibt dann die Indexposition des übereinstimmenden Elements zurück. | Vector | ||
Führt eine Funktion in jedem Element des Vectors aus und gibt einen neuen Vector mit Elementen zurück, die den Ergebnissen des Funktionsaufrufs in jedem Element dieses Vectors entsprechen. | Vector | ||
pop():T
Entfernt das letzte Element aus einem Vector und gibt dieses Element zurück. | Vector | ||
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann. | Object | ||
Fügt am Ende eines Vectors ein oder mehrere Elemente hinzu und gibt die neue Länge des Vectors zurück. | Vector | ||
Entfernen Sie ein einzelnes Element aus dem Vektor. | Vector | ||
Kehrt die Reihenfolge der Elemente im Vector um. | Vector | ||
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest. | Object | ||
shift():T
Entfernt das erste Element aus einem Vector und gibt dieses Element zurück. | Vector | ||
Gibt einen neuen Vector zurück, der aus mehreren Elementen des ursprünglichen Vectors besteht, ohne dabei den ursprünglichen Vector zu ändern. | Vector | ||
Führt für jedes Element im Vector eine Testfunktion aus, bis ein Element erreicht wird, das „true“ zurückgibt. | Vector | ||
Sortiert die Elemente im Vector-Objekt und gibt auch ein sortiertes Vector-Objekt zurück. | Vector | ||
Fügt einem Vector Elemente hinzu bzw. entfernt diese. | Vector | ||
Gibt einen String zurück, der die Elemente im angegebenen Vector repräsentiert. | Vector | ||
Gibt einen String zurück, der die Elemente im Vector repräsentiert. | Vector | ||
Fügt am Beginn eines Vectors ein oder mehrere Elemente hinzu und gibt die neue Länge des Vectors zurück. | Vector | ||
Gibt den Grundwert des angegebenen Objekts zurück. | Object |
fixed | Eigenschaft |
fixed:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Zeigt an, ob die length
-Eigenschaft des Vectors geändert werden kann. Wenn der Wert true
ist, kann die length
-Eigenschaft nicht geändert werden. Dies bedeutet, dass die folgenden Vorgänge nicht zulässig sind, wenn fixed
dem Wert true
entspricht:
- direktes Festlegen der
length
-Eigenschaft - Zuweisen eines Wertes zur Indexposition
length
- Aufrufen einer Methode, die die
length
-Eigenschaft ändert, einschließlich:pop()
push()
shift()
unshift()
splice()
(wenn dersplice()
-Aufruf denlength
-Wert des Vectors ändert).
Implementierung
public function get fixed():Boolean
public function set fixed(value:Boolean):void
length | Eigenschaft |
length:uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Der Bereich der gültigen Indexpositionen, die im Vector verfügbar sind. Eine Vector-Instanz hat Indexpositionen bis zum length
-Wert, schließen diesen jedoch nicht ein.
Jedes Vector-Element hat immer einen Wert, der eine Instanz des Basistyps oder null
ist. Wenn für die length
-Eigenschaft ein Wert festgelegt wird, der größer als der vorhergehende ist, werden zusätzliche Elemente erstellt und mit dem Standardwert gefüllt, der dem Basistyp (null
für Verweistypen) entspricht.
Wenn für die length
-Eigenschaft ein Wert festgelegt wird, der kleiner als der vorhergehende ist, werden alle Elemente in den Indexpositionen, die größer oder gleich dem neuen length
-Wert sind, vom Vector entfernt.
Implementierung
public function get length():uint
public function set length(value:uint):void
Auslöser
RangeError — Wenn diese Eigenschaft geändert wird, während fixed dem Wert true entspricht.
| |
RangeError — Wenn diese Eigenschaft auf einen Wert festgelegt ist, der höher als die maximal zulässige Indexposition ist (232).
|
Vector | () | Konstruktor |
public function Vector(length:uint = 0, fixed:Boolean = false)
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Erstellt einen Vector mit dem festgelegten Basistyp.
Beim Aufrufen des Vector.<T>()
-Konstruktors legen Sie den Basistyp mithilfe der Syntax des type-Parameters fest. Die Syntax des type-Parameters ist eine Sequenz, die einen Punkt (.
), eine linke spitze Klammer (<
), einen Klassennamen, dann eine rechte spitze Klammer (>
) enthält, wie in diesem Beispiel angezeigt:
var v:Vector.<String> = new Vector.<String>();
Um eine Vector-Instanz aus einem Array oder einem anderen Vector (z. B. einem Vector mit einem unterschiedlichen Basistypen) zu erstellen, verwenden Sie die globale Vector()
-Funktion.
Um eine bereits mit Werten versehene Vector-Instanz zu erstellen, verwenden Sie die folgende Syntax anstatt der unten angegebenen Parameter:
// var v:Vector.<T> = new <T>[E0, ..., En-1 ,]; // For example: var v:Vector.<int> = new <int>[0,1,2,];
Für diese Syntax gelten die folgenden Informationen:
- Sie wird in Flash Professional CS5 und höher, Flash Builder 4 und höher sowie Flex 4 und höher unterstützt.
- Das nachgestellte Komma ist optional.
- Leere Elemente im Array werden nicht unterstützt; eine Anweisung wie
var v:Vector.<int> = new <int>[0,,2,]
führt zu einem Compilerfehler. - Sie können keine Standardlänge für die Vektorinstanz festlegen. Stattdessen ist die Länge mit der Anzahl der Elemente in der Initialisierungsliste identisch.
- Sie können nicht angeben, ob die Vector-Instanz eine feste Länge hat. Verwenden Sie stattdessen die
fixed
-Eigenschaft. - Datenverluste oder -fehler können auftreten, wenn Elemente, die als Werte übergeben wurden, nicht dem angegebenen Typ entsprechen. Beispiel:
var v:Vector.<int> = new <int>[4.2]; // compiler error when running in strict mode trace(v[0]); //returns 4 when not running in strict mode
length:uint (default = 0 ) — Die ursprüngliche Länge (Anzahl der Elemente) des Vectors. Wenn dieser Parameter größer als null ist, wird die festgestellte Anzahl der Vector-Elemente erstellt und mit dem Standardwert gefüllt, der dem Basistyp (null für Verweistypen) entspricht.
| |
fixed:Boolean (default = false ) — Gibt an, ob die Länge des Vectors fixiert ist (true ) oder verändert werden kann (false ). Dieser Wert kann auch mithilfe der fixed -Eigenschaft festgelegt werden.
|
Verwandte API-Elemente
concat | () | Methode |
AS3 function concat(... args):Vector.<T>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Verkettet die in den Parametern angegebenen Vektoren mit den Elementen in diesem Vektor und erstellt einen neuen Vektor. Die Vektoren in der Parameterliste müssen denselben Basistyp oder Untertyp wie dieser Vektor haben. Wenn Sie keine Parameter übergeben, wird der zurückgegebene Vektor als Duplikat („Shallow Clone“) des ursprünglichen Vektors erstellt.
Parameter
... args — Null oder mehrere Vektoren des Basistyps, oder Untertyps, dieses Vektor.
|
Vector.<T> — Ein Vektor mit dem gleichen Basistyp wie dieser Vektor, der die Elemente von diesem Vektor enthält, gefolgt von Elementen aus den Vektoren in der Parameterliste.
|
Auslöser
TypeError — Wenn ein Argument kein Vektor des Basistyps ist oder nicht in einen Vektor des Basistyps konvertiert werden kann.
|
every | () | Methode |
AS3 function every(callback:Function, thisObject:Object = null):Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Führt für jedes Element im Vector eine Testfunktion aus, bis ein Element erreicht wird, das für die festgelegte Funktion false
zurückgibt. Sie verwenden diese Methode, um zu ermitteln, ob alle Elemente in einem Vector ein Kriterium erfüllen, z. B. dass die Werte unter einer bestimmten Zahl liegen.
Für diese Methode muss der zweite Parameter (thisObject
) den Wert null
haben, wenn der erste Parameter (callback
) ein Methodenabschluss ist. Dies ist der gebräuchlichste Weg zur Verwendung dieser Methode.
Nehmen Sie an, dass Sie mit Flash Professional eine Funktion in einem Bild auf der Hauptzeitleiste erstellen, diese jedoch in einem anderen this
-Kontext aufrufen möchten:
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Nehmen Sie weiter an, dass Sie dann die every()
-Methode bei einem Vector mit dem Namen myVector
verwenden:
myVector.every(myFunction, someObject);
Da myFunction
ein Mitglied der Hauptklasse der SWF-Datei ist, kann sie nicht in einem anderen this
-Kontext ausgeführt werden. Flash-Laufzeitumgebungen geben eine Ausnahme aus, wenn dieser Code ausgeführt wird. Sie können diesen Laufzeitfehler vermeiden, indem Sie die Funktion wie folgt einer Variable zuweisen:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.every(myFunction, someObject);
Parameter
callback:Function — Die Funktion, die für jedes Element des Vectors ausgeführt werden soll. Diese Funktion wird mit drei Argumenten aufgerufen: Das aktuelle Element des Vectors, die Indexposition des Elements und das Vector-Objekt:
function callback(item:T, index:int, vector:Vector.<T>):Boolean { // your code here } Die Rückruffunktion sollte einen booleschen Wert zurückgeben. | |
thisObject:Object (default = null ) — Das Objekt, auf das der Bezeichner this in der Rückruffunktion verweist, wenn die Funktion aufgerufen wird.
|
Boolean — Ein boolescher Wert true , falls die festgelegte Funktion beim Aufruf in allen Elementen true zurückgibt und andernfalls false .
|
Verwandte API-Elemente
filter | () | Methode |
AS3 function filter(callback:Function, thisObject:Object = null):Vector.<T>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Führt für jedes Element im Vector eine Testfunktion aus und erstellt einen neuen Vector für alle Elemente, die für die festgelegte Funktion true
zurückgeben. Wenn ein Element false
zurückgibt, ist es nicht im Ergebnisvektor enthalten. Der Basistyp des Rückgabevektors stimmt mit dem Basistyp des Vectors überein, bei dem die Methode aufgerufen wurde.
Für diese Methode muss der zweite Parameter (thisObject
) den Wert null
haben, wenn der erste Parameter (callback
) ein Methodenabschluss ist. Dies ist der gebräuchlichste Weg zur Verwendung dieser Methode.
Nehmen Sie an, dass Sie mit Flash Professional eine Funktion in einem Bild auf der Hauptzeitleiste erstellen, diese jedoch in einem anderen this
-Kontext aufrufen möchten:
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Nehmen Sie weiter an, dass Sie dann die filter()
-Methode bei einem Vector mit dem Namen myVector
verwenden:
var result:Vector.<T> = myVector.filter(myFunction, someObject);
Da myFunction
ein Mitglied der Hauptklasse der SWF-Datei ist, kann sie nicht in einem anderen this
-Kontext ausgeführt werden. Flash-Laufzeitumgebungen geben eine Ausnahme aus, wenn dieser Code ausgeführt wird. Sie können diesen Laufzeitfehler vermeiden, indem Sie die Funktion wie folgt einer Variable zuweisen:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.filter(myFunction, someObject);
Parameter
callback:Function — Die Funktion, die für jedes Element des Vectors ausgeführt werden soll. Diese Funktion wird mit drei Argumenten aufgerufen: Das aktuelle Element des Vectors, die Indexposition des Elements und das Vector-Objekt:
function callback(item:T, index:int, vector:Vector.<T>):Boolean; | |
thisObject:Object (default = null ) — Das Objekt, auf das der Bezeichner this in der Rückruffunktion verweist, wenn die Funktion aufgerufen wird.
|
Vector.<T> — Ein neuer Vector, der alle Elemente des ursprünglichen Vectors enthält, für den die callback -Funktion true zurückgibt.
|
Verwandte API-Elemente
forEach | () | Methode |
AS3 function forEach(callback:Function, thisObject:Object = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Führt für jedes Element im Vector eine Funktion aus.
Für diese Methode muss der zweite Parameter (thisObject
) den Wert null
haben, wenn der erste Parameter (callback
) ein Methodenabschluss ist. Dies ist der gebräuchlichste Weg zur Verwendung dieser Methode.
Nehmen Sie an, dass Sie mit Flash Professional eine Funktion in einem Bild auf der Hauptzeitleiste erstellen, diese jedoch in einem anderen this
-Kontext aufrufen möchten:
function myFunction(item:T, index:int, vector:Vector.<T>):void { // your code here }
Nehmen Sie weiter an, dass Sie dann die forEach()
-Methode bei einem Vector mit dem Namen myVector
verwenden:
myVector.forEach(myFunction, someObject);
Da myFunction
ein Mitglied der Hauptklasse der SWF-Datei ist, kann sie nicht in einem anderen this
-Kontext ausgeführt werden. Flash-Laufzeitumgebungen geben eine Ausnahme aus, wenn dieser Code ausgeführt wird. Sie können diesen Laufzeitfehler vermeiden, indem Sie die Funktion wie folgt einer Variable zuweisen:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.forEach(myFunction, someObject);
Parameter
callback:Function — Die Funktion, die für jedes Element des Vectors ausgeführt werden soll. Diese Funktion wird mit drei Argumenten aufgerufen: Das aktuelle Element des Vectors, die Indexposition des Elements und das Vector-Objekt:
function callback(item:T, index:int, vector:Vector.<T>):void; Jeder Rückgabewert von diesem Funktionsaufruf wird verworfen. | |
thisObject:Object (default = null ) — Das Objekt, auf das der Bezeichner this in der Rückruffunktion verweist, wenn die Funktion aufgerufen wird.
|
indexOf | () | Methode |
AS3 function indexOf(searchElement:T, fromIndex:int = 0):int
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Sucht nach einem Element im Vector und gibt die Indexposition des Elements zurück. Das Element wird mit dem Operator für strikte Gleichheit (===
) verglichen.
Parameter
searchElement:T — Das Element, das im Vector gesucht werden soll.
| |
fromIndex:int (default = 0 ) — Die Position im Vector, ab der die Suche nach dem Element gestartet werden soll. Wenn dieser Parameter negativ ist, wird er als length + fromIndex behandelt. Dies bedeutet, dass der Suchvorgang am Ende der -fromIndex -Elemente beginnt und von dieser Position vorwärts bis zum Ende des Vectors sucht.
|
int — Eine auf Null basierende Indexposition des Elements im Vector. Wird das searchElement -Argument nicht gefunden, lautet der Rückgabewert -1.
|
Verwandte API-Elemente
insertAt | () | Methode |
AS3 function insertAt(index:int, element:T):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 19, AIR 19 |
Fügen Sie ein einzelnes Element in den Vektor ein. Bei dieser Methode werden Änderungen am Vektor vorgenommen, ohne eine Kopie zu erstellen.
Parameter
index:int — Eine Ganzzahl, die die Position im Vektor angibt, an der das Element eingefügt werden soll. Sie können hier negative Ganzzahlen verwenden, um eine Position in Bezug auf das Ende des Vektors anzugeben (so ist -1 das letzte Element des Vectors).
| |
element:T |
Auslöser
RangeError — Wenn diese Methode aufgerufen wird, während fixed dem Wert true entspricht.
|
join | () | Methode |
AS3 function join(sep:String = ","):String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Wandelt die Elemente in einem Vector in Strings um, fügt zwischen ihnen das festgelegte Trennzeichen ein, verkettet die Elemente und gibt den Ergebnisstring zurück. Ein verschachtelter Vector wird immer durch ein Komma (,) getrennt und nicht durch das Trennzeichen, das an die join()
-Methode übergeben wurde.
Parameter
sep:String (default = ", ") — Ein Zeichen oder String, mit dem die Vector-Elemente im zurückgegebenen String voneinander getrennt werden. Wenn Sie diesen Parameter weglassen, wird als Standardtrennzeichen das Komma verwendet.
|
String — Ein String, der aus den Elementen eines Vectors besteht, die in Strings umgewandelt und durch den angegebenen Parameter getrennt werden sollen.
|
Verwandte API-Elemente
lastIndexOf | () | Methode |
AS3 function lastIndexOf(searchElement:T, fromIndex:int = 0x7fffffff):int
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Sucht nach einem Element im Vector, wobei von der festgelegten Indexposition nach hinten gesucht wird und gibt dann die Indexposition des übereinstimmenden Elements zurück. Das Element wird mit dem Operator für strikte Gleichheit (===
) verglichen.
Parameter
searchElement:T — Das Element, das im Vector gesucht werden soll.
| |
fromIndex:int (default = 0x7fffffff ) — Die Position im Vector, ab der die Suche nach dem Element gestartet werden soll. Der Standardwert ist der maximal zulässige Indexpositionswert. Dies bedeutet, dass der Suchvorgang beim letzten Element im Vector beginnt.
Wenn dieser Parameter negativ ist, wird er als |
int — Eine auf Null basierende Indexposition des Elements im Vector. Wird das searchElement -Argument nicht gefunden, lautet der Rückgabewert -1.
|
Verwandte API-Elemente
map | () | Methode |
AS3 function map(callback:Function, thisObject:Object = null):Vector.<T>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Führt eine Funktion in jedem Element des Vectors aus und gibt einen neuen Vector mit Elementen zurück, die den Ergebnissen des Funktionsaufrufs in jedem Element dieses Vectors entsprechen. Der Ergebnisvektor hat den gleichen Basistyp und length
-Wert wie der ursprüngliche Vector. Das Element an der Indexposition i
im Ergebnisvektor ist das Ergebnis des Elementaufrufs an der Indexposition i
im ursprünglichen Vector.
Für diese Methode muss der zweite Parameter (thisObject
) den Wert null
haben, wenn der erste Parameter (callback
) ein Methodenabschluss ist. Dies ist der gebräuchlichste Weg zur Verwendung dieser Methode.
Nehmen Sie an, dass Sie mit Flash Professional eine Funktion in einem Bild auf der Hauptzeitleiste erstellen, diese jedoch in einem anderen this
-Kontext aufrufen möchten:
function myFunction(item:Object, index:int, vector:Vector.<T>):T { // your code here }
Nehmen Sie weiter an, dass Sie dann die map()
-Methode bei einem Vector mit dem Namen myVector
verwenden:
myVector.map(myFunction, someObject);
Da myFunction
ein Mitglied der Hauptklasse der SWF-Datei ist, kann sie nicht in einem anderen this
-Kontext ausgeführt werden. Flash-Laufzeitumgebungen geben eine Ausnahme aus, wenn dieser Code ausgeführt wird. Sie können diesen Laufzeitfehler vermeiden, indem Sie die Funktion wie folgt einer Variable zuweisen:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.map(myFunction, someObject);
Parameter
callback:Function — Die Funktion, die für jedes Element des Vectors ausgeführt werden soll. Diese Funktion wird mit drei Argumenten aufgerufen: Das aktuelle Element des Vectors, die Indexposition des Elements und das Vector-Objekt:
function callback(item:T, index:int, vector:Vector.<T>):T; | |
thisObject:Object (default = null ) — Das Objekt, auf das der Bezeichner this in der Rückruffunktion verweist, wenn die Funktion aufgerufen wird.
|
Vector.<T> — Ein neuer Vector, der die Ergebnisse des Funktionsaufrufs in jedem Element dieses Vectors enthält. Der Ergebnisvektor hat den gleichen Basistyp und length -Wert wie das Original.
|
Verwandte API-Elemente
pop | () | Methode |
AS3 function pop():T
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Entfernt das letzte Element aus einem Vector und gibt dieses Element zurück. Die length
-Eigenschaft des Vectors verringert sich um eins, wenn diese Funktion aufgerufen wird.
T — Der Wert des letzten Elements im festgelegten Vector.
|
Auslöser
RangeError — Wenn diese Methode aufgerufen wird, während fixed dem Wert true entspricht.
|
Verwandte API-Elemente
push | () | Methode |
AS3 function push(... args):uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Fügt am Ende eines Vectors ein oder mehrere Elemente hinzu und gibt die neue Länge des Vectors zurück.
Da diese Funktion mehrere Argumente akzeptieren kann, wird der Datentyp der Argumente während des Kompilierens auch im Strict-Modus nicht überprüft. Wird jedoch ein Argument übergeben, das keine Instanz des Basistyps ist, tritt zur Laufzeit eine Ausnahme auf.
Parameter
... args — Ein oder mehrere Werte, die an den Vector angehängt werden.
|
uint — Die Länge des Vectors, nachdem die neuen Elemente hinzugefügt wurden.
|
Auslöser
TypeError — Wenn ein beliebiges Argument keine Instanz des Basistyps T des Vectors ist.
| |
RangeError — Wenn diese Methode aufgerufen wird, während fixed dem Wert true entspricht.
|
Verwandte API-Elemente
removeAt | () | Methode |
AS3 function removeAt(index:int):T
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 19, AIR 19 |
Entfernen Sie ein einzelnes Element aus dem Vektor. Bei dieser Methode werden Änderungen am Vektor vorgenommen, ohne eine Kopie zu erstellen.
Parameter
index:int — Eine Ganzzahl, die den Index des Elements im zu löschenden Vektor angibt. Sie können hier negative Ganzzahlen verwenden, um eine Position in Bezug auf das Ende des Vektors anzugeben (so ist -1 das letzte Element des Vectors).
|
T — Das Element, das aus dem ursprünglichen Vektor gelöscht wurde.
|
Auslöser
RangeError — Wenn das Index argument einen zu löschenden Index festlegt, der sich außerhalb der Vektorgrenzen befindet.
| |
RangeError — Wenn diese Methode aufgerufen wird, während fixed dem Wert true entspricht.
|
reverse | () | Methode |
AS3 function reverse():Vector.<T>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Kehrt die Reihenfolge der Elemente im Vector um. Diese Methode ändert den Vector, über den sie aufgerufen wurde.
RückgabewerteVector.<T> — Der Vector mit den Elementen in umgekehrter Reihenfolge.
|
shift | () | Methode |
AS3 function shift():T
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Entfernt das erste Element aus einem Vector und gibt dieses Element zurück. Die verbleibenden Vector-Elemente werden von ihrer ursprünglichen Position i nach i-1 verschoben.
RückgabewerteT — Das erste Element im Vector.
|
Auslöser
RangeError — Wenn fixed dem Werttrue entspricht.
|
Verwandte API-Elemente
slice | () | Methode |
AS3 function slice(startIndex:int = 0, endIndex:int = 16777215):Vector.<T>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Gibt einen neuen Vector zurück, der aus mehreren Elementen des ursprünglichen Vectors besteht, ohne dabei den ursprünglichen Vector zu ändern. Der zurückgegebene Vector beinhaltet das startIndex
-Element und alle Elemente bis zum endIndex
-Element, schließt dieses jedoch nicht ein.
Wenn Sie keine Parameter übergeben, wird der neue Vektor als Duplikat („Shallow Clone“) des ursprünglichen Vektors erstellt. Wenn Sie den Wert 0 für beide Parameter übergeben, wird ein neuer, leerer Vektor desselben Typs wie der ursprüngliche Vektor erstellt.
Parameter
startIndex:int (default = 0 ) — Eine Zahl, die die Indexposition des Segmentanfangs angibt. Wenn startIndex eine negative Zahl ist, beginnt der Startpunkt am Ende des Vectors, wobei -1 das letzte Element ist.
| |
endIndex:int (default = 16777215 ) — Eine Zahl, die die Indexposition des Segmentendes angibt. Wenn Sie diesen Parameter weglassen, umfasst das Segment alle Elemente vom Anfang bis zum Ende des Vectors. Wenn endIndex eine negative Zahl ist, wird der Endpunkt vom Ende des Vectors aus festgelegt, wobei -1 das letzte Element ist.
|
Vector.<T> — Ein Vector, der aus mehreren Elementen des ursprünglichen Vectors besteht.
|
some | () | Methode |
AS3 function some(callback:Function, thisObject:Object = null):Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Führt für jedes Element im Vector eine Testfunktion aus, bis ein Element erreicht wird, das true
zurückgibt. Verwenden Sie diese Methode, um festzustellen, ob alle Elemente in einem Vector ein Kriterium erfüllen, z. B. dass die Werte unter einer bestimmten Zahl liegen.
Für diese Methode muss der zweite Parameter (thisObject
) den Wert null
haben, wenn der erste Parameter (callback
) ein Methodenabschluss ist. Dies ist der gebräuchlichste Weg zur Verwendung dieser Methode.
Nehmen Sie an, dass Sie eine Funktion in einem Bild auf der Hauptzeitleiste erstellen, diese jedoch in einem anderen this
-Kontext aufrufen möchten:
function myFunction(item:Object, index:int, vector:Vector.<T>):Boolean { // your code here }
Nehmen Sie weiter an, dass Sie dann die some()
-Methode bei einem Vector mit dem Namen myVector
verwenden:
myVector.some(myFunction, someObject);
Da myFunction
ein Mitglied der Hauptklasse der SWF-Datei ist, kann sie nicht in einem anderen this
-Kontext ausgeführt werden. Flash-Laufzeitumgebungen geben eine Ausnahme aus, wenn dieser Code ausgeführt wird. Sie können diesen Laufzeitfehler vermeiden, indem Sie die Funktion wie folgt einer Variable zuweisen:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.some(myFunction, someObject);
Parameter
callback:Function — Die Funktion, die für jedes Element des Vectors ausgeführt werden soll. Diese Funktion wird mit drei Argumenten aufgerufen: Das aktuelle Element des Vectors, die Indexposition des Elements und das Vector-Objekt:
function callback(item:T, index:int, vector:Vector.<T>):Boolean Die Rückruffunktion sollte einen booleschen Wert zurückgeben. | |
thisObject:Object (default = null ) — Das Objekt, auf das der Bezeichner this in der Rückruffunktion verweist, wenn die Funktion aufgerufen wird.
|
Boolean — Der boolesche Wert true , wenn ein Element im Vector für die festgelegte Funktion true zurückgibt; andernfalls false .
|
Verwandte API-Elemente
sort | () | Methode |
AS3 function sort(sortBehavior:*):Vector.<T>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Sortiert die Elemente im Vector-Objekt und gibt auch ein sortiertes Vector-Objekt zurück. Diese Methode sortiert anhand des sortBehavior
-Parameter, der entweder eine Funktion ist, die zwei Werte vergleicht, oder ein Satz von Sortieroptionen.
Diese Methode verwendet einen Parameter. Der Parameter kann einer der folgenden sein:
- eine Funktion, die zwei Argumente des Basistyps (
T
) des Vector-Objekts verwendet und einen Number-Wert zurückgibt:function compare(x:T, y:T):Number {}
Die Logik der Funktion besteht darin, bei zwei gegebenen Elementen
x
undy
einen der drei folgenden Werte zurückzugeben:- Eine negative Zahl, wenn
x
vory
in der sortierten Sequenz eingeblendet werden sollte - 0, wenn
x
undy
einander entsprechen - Eine positive Zahl, wenn
x
in der sortierten Sequenz nachy
eingeblendet werden soll
- Eine negative Zahl, wenn
- eine Zahl, die ein „bitweises OR“ der folgenden Werte ist:
- 1 oder
Array.CASEINSENSITIVE
- 2 oder
Array.DESCENDING
- 4 oder
Array.UNIQUESORT
- 8 oder
Array.RETURNINDEXEDARRAY
- 16 oder
Array.NUMERIC
Wenn der Wert 0 ist, erfolgt die Sortierung auf folgende Weise:
- Bei der Sortierung wird Groß-/Kleinschreibung beachtet (Z kommt vor a).
- Die Sortierung erfolgt aufsteigend (a kommt vor b).
- Das Array wird entsprechend der Sortierreihenfolge geändert. Elemente mit identischen Sortierfeldern werden im sortierten Array ohne bestimmte Reihenfolge nacheinander platziert.
- Alle Elemente werden, unabhängig von ihrem Datentyp, so sortiert, als seien sie Strings. 100 kommt demnach vor 99, da „1“ ein kleinerer Stringwert ist als „9“.
- 1 oder
Parameter
sortBehavior:* — Ein Function - oder Number -Wert, der das Verhalten der Sortierung bestimmt. Ein Function -Parameter gibt eine Vergleichsmethode an. Ein Number -Wert gibt die Sortieroptionen an.
|
Vector.<T> — Ein Vector-Objekt mit Elementen in der neuen Reihenfolge.
|
Verwandte API-Elemente
splice | () | Methode |
AS3 function splice(startIndex:int, deleteCount:uint = 4294967295, ... items):Vector.<T>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Fügt einem Vector Elemente hinzu bzw. entfernt diese. Bei dieser Methode werden Änderungen am Vector vorgenommen, ohne eine Kopie zu erstellen.
Hinweis: Um diese Methode in einer Vector-Unterklasse zu überschreiben, verwenden Sie, wie im folgenden Beispiel gezeigt, ...args
für die Parameter:
public override function splice(...args) { // your statements here }
Parameter
startIndex:int — Eine Ganzzahl, die die Indexposition des Vector-Elements angibt, an der der Einfüge- oder Löschvorgang beginnt. Sie können hier negative Ganzzahlen verwenden, um eine Position in Bezug auf das Ende des Vectors anzugeben (so ist -1 das letzte Element des Vectors).
| |
deleteCount:uint (default = 4294967295 ) — Eine Ganzzahl, die die Anzahl der zu löschenden Elemente angibt. Diese Zahl schließt das im startIndex -Parameter angegebene Element ein. Wenn der Wert 0 lautet, werden keine Elemente gelöscht.
| |
... items — Eine optionale Liste mit mindestens zwei durch Kommas getrennten Werten, die an der durch den Parameter startIndex angegebenen Position in den Vektor einzufügen sind.
|
Vector.<T> — Ein Vector, der die aus dem ursprünglichen Vector entfernten Elemente enthält.
|
Auslöser
RangeError — Wenn die startIndex - und deleteCount -Argumente eine zu löschende Indexposition festlegen, die sich außerhalb der Grenzen des Vectors befindet.
| |
RangeError — Wenn diese Methode aufgerufen wird, während fixed dem Wert true entsprich, und der splice() -Vorgang den length -Wert des Vectors ändert.
|
toLocaleString | () | Methode |
public function toLocaleString():String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Gibt einen String zurück, der die Elemente im angegebenen Vector repräsentiert. Alle Vector-Elemente von der Indexposition 0 bis zur höchsten Indexposition werden in einen verketteten, durch Kommas getrennten String konvertiert. In der ActionScript 3.0-Implementierung gibt diese Methode den gleichen Wert wie die Vector.toString()
-Methode zurück.
String — Ein String mit Vector-Elementen.
|
Verwandte API-Elemente
toString | () | Methode |
public function toString():String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Gibt einen String zurück, der die Elemente im Vector repräsentiert. Alle Vector-Elemente von der Indexposition 0 bis zur höchsten Indexposition werden in einen verketteten, durch Kommas getrennten String konvertiert. Verwenden Sie die Vector.join()
-Methode, um ein benutzerdefiniertes Trennzeichen festzulegen.
String — Ein String mit Vector-Elementen.
|
Verwandte API-Elemente
unshift | () | Methode |
AS3 function unshift(... args):uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Fügt am Beginn eines Vectors ein oder mehrere Elemente hinzu und gibt die neue Länge des Vectors zurück. Die anderen Elemente in diesem Vector werden von ihrer ursprünglichen Position i nach i + der Anzahl der neuen Elemente verschoben.
Da diese Funktion mehrere Argumente akzeptieren kann, wird der Datentyp der Argumente während des Kompilierens auch im Strict-Modus nicht überprüft. Wird jedoch ein Argument übergeben, das keine Instanz des Basistyps ist, tritt zur Laufzeit eine Ausnahme auf.
Parameter
... args — Eine oder mehrere Instanzen des Basistyps des Vectors, die am Anfang des Vectors eingefügt werden sollen.
|
uint — Eine Ganzzahl, die die neue Länge des Vectors darstellt.
|
Auslöser
TypeError — Wenn ein beliebiges Argument keine Instanz des Basistyps T des Vectors ist.
| |
RangeError — Wenn diese Methode aufgerufen wird, während fixed dem Wert true entspricht.
|
Verwandte API-Elemente
Tue Jun 12 2018, 10:04 AM Z