ActionScript 3.0/Operatoren
Operatoren zijn speciale symbolen of woorden die gebruikt worden om berekeningen uit te voeren. Operatoren worden vooral gebruikt voor wiskundige bewerkingen en voor het vergelijken van verschillende waardes. Een operator is bijna altijd verbonden met een operand. In het volgende voorbeeld worden de woorden operatoren en operanden uitgelegd:
VB: 4 + 5 In dit voorbeeld is ‘+’ de operator en ‘4’ en ‘5’ zijn de operanden
Bij een operator worden één of meerdere waardes gebruikt met één waarde als resultaat. Enkele voorbeelden van Operatoren zijn:
- Optellen(+): var sum:Number = 23 + 32
- Vermenigvuldigen (*):var energy:Number = mass * speedOfLight * speedOfLight;
- Gelijkheidsoperator(==):
if (dayOfWeek == "Wednesday") { takeOutTrash(); }
Primaire Operatoren
[bewerken]De primaire operatoren zijn de operatoren die worden gebruikt voor het maken van letterlijke tekens voor arrays
en objecten, groeperen van expressies, aanroepen van functies, en de toegang tot eigenschappen.
Operator | Bewerking die wordt uitgevoerd |
[] | Initialiseert een array |
{x:y} | Initialiseert een object |
() | Groepeert expressies |
f(x) | Roept een functie aan |
new | Roept een constructor aan |
x,y x(y) | Zorgt voor toegang tot een eigenschap |
<> </> | Initialiseert een object XMLList |
@@ | Initialiseert een attribuut |
:: | Kwalificeert een naam |
.. | Zorgt voor toegang tot een afstammend XML-element |
Postfix Operatoren
[bewerken]Postfix-operatoren richten zich altijd op een operand. De operator verhoogt of verlaagt de waarde. Hoewel deze operatoren unair zijn, worden zij apart behandeld van de unaire operatoren, omdat deze operatoren een hoge prioriteit hebben.
Alle postfix-operatoren in de volgende tabel hebben dezelfde prioriteit:
Operator | Bewerking die wordt uitgevoerd |
++ | verhoogt |
-- | verlaagt |
Unair Operatoren
[bewerken]Unaire operatoren richten zich op één operand. De operatoren ++ (verhogen) en -- (verlagen) in deze groep zijn prefix-operatoren. Dit betekent dat ze voor de operand worden weergegeven in een expressie. Prefix-operatoren verschillen van Postfix-operatoren, omdat de Prefix-operatoren de verhogende of verlagende bewerking uitvoert voordat de waarde van de gehele expressie wordt geretourneerd.
Alle unaire operatoren in de volgende tabel hebben dezelfde prioriteit:
Operator | Bewerking die wordt uitgevoerd |
++ | Verhoogt (prefix) |
-- | Verlaagt (prefix) |
+ | Unair (positief) |
- | Unair (negatief) |
! | Logische NOT |
~ | Bitsgewijze NOT |
delete | Verwijdert een eigenschap |
typeof | Retourneert informatie omtrent het type |
void | Retourneert een ongedefinieerde waarde |
Relationele operatoren
[bewerken]Relationele operatoren hebben meestal twee operanden. Deze operanden worden vervolgens met elkaar vergeleken, daarna geven de operatoren een Boleaanse waarde terug – Dit is een ‘True-False’ waarde – De bekendste relationele operatoren zijn nog wel de < en > tekens.
Alle waarden in de onderstaande tabel hebben deze functie
Operator | Bewerking die wordt uitgevoerd |
---|---|
< | Kleiner dan |
> | Groter dan |
<= | Kleiner dan of gelijk aan |
>= | Groter dan of gelijk aan |
== | Hiermee worden de operanden met elkaar vergeleken |
Gelijkheidsoperatoren
[bewerken]Net zoals relationele operatoren richt een gelijkheidsoperator zich ook op twee operanden. Ook vergelijken ze deze operanden en geven dan een boleaanse waarde terug. Een bekend soort gelijkheidsoperator is ‘!=’, ‘==’ en ‘===’ Bij deze tekens zie je heel duidelijk dat ze waardes met elkaar vergelijken.
Voorbeeld:
3 = 4
Omdat het een boleaanse waarde zou geven zou je bijvoorbeeld ‘False’, of ‘0’ kunnen verwachten
Operator | Bewerking die wordt uitgevoerd |
---|---|
== | De operanden zijn gelijk (Gelijkheid) |
!= | De operanden zijn niet gelijk (Ongelijkheid) |
Multiplicatieve operatoren
[bewerken]Multiplicatieve operatoren werken met twee operanden en voeren berekeningen uit. Ze kun je met multiplicatieve operatoren delen, vermenigvuldigen en de restbepaling bij delen bepalen. Ze hebben allemaal dezelfde prioriteit.
var energy:Number = mass * speedOfLight * speedOfLight
Operator | Bewerking die wordt uitgevoerd |
* | Vermenigvuldigen |
/ | Delen |
% | Restbepalen bij deling |
Additieve operatoren
[bewerken]Additieve operatoren werken met twee operanden, net zoals multiplicatieve operatoren, en voeren de berekeningen optellen en aftrekken uit.
var sum:Number = 23 + 32
var mijnUitkomst:Number = 10+5-2
Operator | Bewerking die wordt uitgevoerd |
+ | Optellen |
- | Aftrekken |
Operatoren voor bitsgewijs verplaatsen
[bewerken]Operatoren voor bitsgewijs verplaatsen werken met twee operanden. De eerste operand wordt verplaatst met het aantal plaatsen dat de tweede operand had opgegeven.
Voorbeeld:
Trace( 2 << 2);
Uitkomst is: 8.
De uitleg hiervan: de binaire code van 2 = 0010
De binaire code van 8 = 1000.
De binaire code van twee is twee plaatsen naar links verplaatst, wat de binaire code van 8 oplevert
Operator | Bewerking die wordt uitgevoerd |
<< | Bitsgewijs naar links verplaatsen |
>> | Bitsgewijs naar rechts verplaatsen |
>>> | Bitsgewijs zonder teken naar rechts verplaatsen |
Samenvattende tabel
[bewerken]Primair | [] {x:y} () f(x) new x.y x[y] <></> @ :: .. |
Postfix | x++ x-- |
Unair | ++x --x + - ~ ! |
Multiplicatief | * / % |
Additief | + - |
Bitsgewijs verplaatsen | << >> >>> |
Relationeel | < > <= >= |
Gelijkheid | == != === !== |
Bitsgewijze AND | & |
Bitsgewijze OR | | |
Bitsgewijze XOR | ^ |