Rheinwerk Design < openbook > Rheinwerk Design - Know-how für Kreative.
Know-how für Kreative

 << zurück
ActionScript 1 und 2 von Sascha Wolter (http://www.saschawolter.de/)
Objektorientierung und Codedesign mit Flash MX 2004
Buch: ActionScript 1 und 2

ActionScript 1 und 2
672 S., mit CD, Referenzkarte, 44,90 Euro
Rheinwerk Design
ISBN 3-89842-221-6
gp Kapitel 8 Ausdrücke und Operatoren
  gp 8.1 Ausdrücke
    gp 8.1.1 Operatoren
    gp 8.1.2 Reihenfolge
    gp 8.1.3 Bedingungen
  gp 8.2 Zuweisungsoperatoren
    gp 8.2.1 ++ (Prä- und Post-Inkrement)
    gp 8.2.2 -- (Prä- und Post-Dekrement)
    gp 8.2.3 = (Zuweisung)
    gp 8.2.4 *= (Multiplikationszuweisung)
    gp 8.2.5 /= (Divisionszuweisung)
    gp 8.2.6 %= (Modulozuweisung)
    gp 8.2.7 += (Additionszuweisung)
    gp 8.2.8 -= (Subtraktionszuweisung)
    gp 8.2.9 &= (bitweise Und-Zuweisung)
    gp 8.2.10 |= (bitweise Oder-Zuweisung)
    gp 8.2.11 ^= (bitweise XOder-Zuweisung)
    gp 8.2.12 <<= (bitweise Verschiebung nach links und Zuweisung)
    gp 8.2.13 >>= (bitweise Verschiebung nach rechts und Zuweisung)
    gp 8.2.14 >>>= (vorzeichenlose bitweise Verschiebung nach rechts und Zuweisung)
  gp 8.3 Arithmetische Operatoren
    gp 8.3.1 + (Addition, Konkatenation und Plus-Vorzeichen)
    gp 8.3.2 - (Subtraktion und Minus-Vorzeichen)
    gp 8.3.3 * (Multiplikation)
    gp 8.3.4 / (Division)
    gp 8.3.5 % (Modulo)
  gp 8.4 Vergleichsoperatoren
    gp 8.4.1 < (kleiner als)
    gp 8.4.2 <= (kleiner als oder gleich)
    gp 8.4.3 > (größer als)
    gp 8.4.4 >= (größer als oder gleich)
    gp 8.4.5 lt (kleiner als für Strings in Flash 4)
    gp 8.4.6 le (kleiner oder gleich für Strings in Flash 4)
    gp 8.4.7 gt (größer als für Strings in Flash 4)
    gp 8.4.8 ge (größer oder gleich für Strings in Flash 4)
    gp 8.4.9 == (gleich)
    gp 8.4.10 != (ungleich)
    gp 8.4.11 === (striktes Gleich)
    gp 8.4.12 !== (striktes Ungleich)
    gp 8.4.13 eq (gleich für Strings in Flash 4)
    gp 8.4.14 ne (ungleich für Strings in Flash 4)
    gp 8.4.15 instanceof (Instanz von Prototyp)
    gp 8.4.16 in (Eigenschaft von Instanz)
  gp 8.5 Logische Operatoren
    gp 8.5.1 ! (logisches Nicht)
    gp 8.5.2 not (logisches Nicht in Flash 4)
    gp 8.5.3 && (logisches Und)
    gp 8.5.4 and (logisches Und in Flash 4)
    gp 8.5.5 || (logisches Oder)
    gp 8.5.6 or (logisches Oder in Flash 4)
  gp 8.6 Bitweise Operatoren
    gp 8.6.1 ~ (Bit-Komplement)
    gp 8.6.2 << (bitweise Verschiebung nach links)
    gp 8.6.3 >> (bitweise Verschiebung nach rechts)
    gp 8.6.4 >>> (vorzeichenlose bitweise Verschiebung nach rechts)
    gp 8.6.5 & (bitweises Und, String-Verknüpfung in Flash4)
    gp 8.6.6 ^ (bitweises XOder)
    gp 8.6.7 | (bitweises Oder)
  gp 8.7 Sonstige Operatoren
    gp 8.7.1 ( ) (Gruppierung und Funktionsaufruf)
    gp 8.7.2 [ ] (Array-Zugriff und Array-Initialisierung)
    gp 8.7.3 { } (Objektinitialisierung)
    gp 8.7.4 . (Objektzugriff)
    gp 8.7.5 new (Objekt zuweisen)
    gp 8.7.6 delete (Objektzuweisung aufheben)
    gp 8.7.7 typeof (Objekttyp)
    gp 8.7.8 void (gibt einen undefinierten Wert zurück)
    gp 8.7.9 add (Stringverkettung in Flash 4)
    gp 8.7.10 ?: (bedingt)
    gp 8.7.11 , (mehrfache Auswertung)

Kapitel 8 Ausdrücke und Operatoren

Werte mit Operanden und Operatoren bestimmen!

Ein Ausdruck wird in Flash an zahlreichen Stellen benötigt. Dazu zählen Anweisungen, die einen neuen Wert berechnen, und Bedingungen, die einen Wert überprüfen. Auch die Parameter für Funktionen und Methoden werden als Ausdrücke angegeben!

Häufig muss ein Wert berechnet werden, bevor Sie diesen als Parameter verwenden oder ihn in eine Variable packen. Manchmal möchten Sie einen Wert auch in eine Berechnung oder in einen Vergleich mit einbeziehen. Für diese Art von »Formeln« benötigen Sie Ausdrücke:

// Ausdruck als Anweisung
meineName = "Sascha";
// Ausdruck als Parameter
meinGewicht = parseFloat("70"+"."+"5");
// Ausdruck als Bedingung
if (alter<18) {
   trace("Zutritt nicht erlaubt!");
}

Rheinwerk Design - Zum Seitenanfang

8.1 Ausdrücke  downtop

Einfache Ausdrücke

Einfache Ausdrücke bestehen nur aus einem Operanden vom Typ Zahl, Zeichenkette, Wahrheitswerte, Objekte, null oder undefined. Anstelle von Werten dürfen auch Variablen, Eigenschaften, Funktionen und Methoden eingesetzt werden, die für einen entsprechenden Wert als Platzhalter stehen:

// Zahl als Parameter einer Methode
trace(Math.sin(2.5));
// Zeichenkette als Parameter einer Funktion
trace(parseFloat("123"+"."+"456"));
// Wahrheitswert als Parameter einer Methode
meinClip.startDrag(true);
// Objekt als Parameter einer Methode
meineInstanz.hitTest(deineInstanz);
Zusammengesetzte Ausdrücke

Zusammengesetzte Ausdrücke bestehen aus Operanden und Operatoren. Dabei gibt es einstufige Operatoren (unäre Operatoren), die sich auf nur einen Operanden beziehen. Hierzu zählen beispielsweise die Vorzeichen + und -, Inkrement und Dekrement (++ und --) sowie die Operatoren delete und typeof.

Operanden

Als Operanden sind einfache und zusammengesetzte Ausdrücke erlaubt:

// Vorzeichen
kontostand = -1000;
// Inkrement
trace(++kontostand);
// Datentyp
trace(typeof kontostand);

Die meisten Operatoren erfordern zwei Operanden. Dazu zählen die Zuweisungsoperatoren, mit denen einem Bezeichner ein Wert zugewiesen wird, und die arithmetischen Operatoren mit diversen Rechenarten:

ergebnis = 10 + 5;
alterInTagen = 29 * 365;
kompletterName = "Herr " + nachname;
preisInEuro = preisInDM / 1.95583;
meinMovieclip._x = zufall * 100;
transparenz = meinMovieclip._alpha / 2;

Um ganz genau zu sein, bestehen die vorhergehenden Beispiele sogar aus drei Operanden und zwei Operatoren. Der Operator mit dem höheren Vorrang verbindet dabei die umliegenden zwei Operanden zu einem Ausdruck, der einen Wert ergibt (10 + 5). Dieser Wert wird mit Hilfe des zweiten Operators mit dem übrig gebliebenen Operanden verbunden (ergebnis = 10 + 5).

Aufbau

Ein Ausdruck besteht also aus weiteren einfachen oder zusammengesetzten Ausdrücken. Dabei gilt grundsätzlich, dass jeder Ausdruck beliebig komplex werden darf, solange er in der folgenden Form aufgebaut ist:

gp  Ein Ausdruck besteht aus einem Ausdruck und einem Operator (kontostand--).
gp  Ein Ausdruck besteht aus einem Operator und einem Ausdruck (typeof punkte).
gp  Ein Ausdruck besteht aus einem Ausdruck, einem Operator und einem Ausdruck (variable = wert).

Mit Hilfe dieser wenigen Regeln lässt sich beinahe jeder noch so komplizierte Ausdruck in seine Bestandteile zerlegen. Ein Ausdruck der Form meinMovieclip._yscale = meinMovieclip._yscale / 2; besteht beispielsweise aus einem Ausdruck (meinMovieclip._yscale), der über einen Zuweisungsoperator mit einem weiteren Ausdruck (meinMovieclip._yscale / 2) verknüpft ist. Der zweite Ausdruck wiederum besteht aus zwei Ausdrücken, die über einen Divisions-Operator verbunden sind.


Rheinwerk Design - Zum Seitenanfang

8.1.1 Operatoren  downtop

Die Liste der Operatoren in Flash ist sehr umfangreich und bietet eine Vielzahl an Möglichkeiten, die in diesem Buch in die folgenden Kategorien unterteilt sind:

gp  Zuweisungsoperatoren
gp  Arithmetische Operatoren
gp  Vergleichsoperatoren
gp  Logische Operatoren
gp  Bitweise Operatoren
gp  Sonstige Operatoren

Rheinwerk Design - Zum Seitenanfang

8.1.2 Reihenfolge  downtop

Sobald mehrere Operatoren zum Einsatz kommen, muss wie in der Mathematik auf den Vorrang geachtet werden. Es gilt »Punktrechnung vor Strichrechnung« so wie in der folgenden Tabelle beschrieben.


Tabelle 8.1   Vorrang der Operatoren (von oben nach unten)

Operator Beschreibung
( ) Gruppierung
+ Einstufiges Plus (Vorzeichen)
- Einstufiges Minus (Vorzeichen)
~ Bit-Komplement
! Logisches Nicht
not Logisches Nicht (Flash 4)
++ Post-Inkrement
-- Post-Dekrement
( ) Funktionsaufruf
[ ] Array-Element
. Objektzugriffsoperator (Strukturelement)
++ Prä-Inkrement
-- Prä-Dekrement
{ } Objektinitialisierung
new Objekt zuweisen
delete Objektzuweisung aufheben
typeof Objekttyp
void Gibt einen undefinierten Wert zurück
* Multiplikation
/ Division
% Modulo
+ Addition
add Stringverkettung (früher &)
- Subtraktion
<< Bitweise Verschiebung nach links
>> Bitweise Verschiebung nach rechts
>>> Bitweise Verschiebung nach rechts (ohne Vorzeichen)
< Kleiner als
<= Kleiner als oder gleich
> Größer als
>= Größer als oder gleich
lt Kleiner als (für Zeichenketten in Flash 4)
le Kleiner oder gleich (für Zeichenketten in Flash 4)
gt Größer als (für Zeichenketten in Flash 4)
ge Größer oder gleich (für Zeichenketten in Flash 4)
== Gleich
!= Ungleich
=== Striktes Gleich
!== Striktes Ungleich
eq Gleich (für Zeichenketten in Flash 4)
ne Ungleich (für Zeichenketten in Flash 4)
instanceof Instanz von Prototyp
in Eigenschaft von Instanz
& Bitweises Und
^ Bitweises XOder
| Bitweises Oder
&& Logisches Und
and Logisches Und (Flash 4)
|| Logisches Oder
or Logisches Oder (Flash 4)
?: Bedingt
= Zuweisung
*=, /=, %=, +=, -=, &=, |=, ^=, <<=, >>=, >>>= Zusammengesetzte Zuweisung
, Mehrfache Auswertung


Rheinwerk Design - Zum Seitenanfang

8.1.3 Bedingungen  toptop

In vielen Fällen werden Bedingungen benötigt, um z.B. den Programmablauf zu steuern. Dabei ist eine Bedingung nichts anderes als ein Ausdruck, der als Ergebnis einen Wahrheitswert in der Form true oder false liefert. Sollte ein Ausdruck keinen Wahrheitswert liefern, dann kann er dennoch als Bedingung verwendet werden, sofern die implizite Typkonvertierung einen sinnvollen Wahrheitswert liefert (siehe »Typumwandlung«, Seite 182).

In der Regel bestehen Bedingungen aus Vergleichen (siehe »Vergleichsoperatoren«, Seite 212), die bei komplexeren Ausdrücken mit logischen Operatoren verknüpft sind (siehe »Logische Operatoren«, Seite 224):

if (bedingung) {
   // tu was
}
if (alter>80 && reichtum>1000000) {
   heirate();
}
 << zurück
  
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: ActionScript 1 und 2
ActionScript 1 und 2
bestellen
 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchtipps
Zum Rheinwerk-Shop: JavaScript






 JavaScript


Zum Rheinwerk-Shop: jQuery






 jQuery


Zum Rheinwerk-Shop: Responsive Webdesign






 Responsive Webdesign


Zum Rheinwerk-Shop: Suchmaschinen-Optimierung






 Suchmaschinen-
 Optimierung


Zum Rheinwerk-Shop: Schrödinger lernt HTML5, CSS3 und JavaScript






 Schrödinger lernt
 HTML5, CSS3
 und JavaScript


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2005
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern