javascript JavaScript operatorer




En "operator" er et symbol, der bruges til at styre udførslen af en operation på en bestemt måde. I javaScript kan anvendes ca. 50 forskellige operatorer fordelt på følgende grupper:


AritmetiskeAlmindelig og speciel aritmetisk talbehandling.
SammenligningnendeSammenligninger variablers værdier. Boolske.
LogiskeLogiske sammenligninger. Boolske.
BitviseBitbaseret behandling ved sammenligning eller bitflytning.
AssignmentOverførsel af værdi fra en variabel til en anden.
StrengKonkatenering af strenge
SpecielleSpecielle operatorer af meget forskellig art.


Forrang

Operatorernes forrang - den rækkefølge, der anvendes ved evaluering af udtryk - (der kan overstyres ved anvendelse af parenteser), er:

  • comma ,
  • assignment = += -= *= /= %= <<= >>= >>>= &= ^= |=
  • conditional ?:
  • logical-or ||
  • logical-and &&
  • bitwise-or |
  • bitwise-xor ^
  • bitwise-and &
  • equality == !=
  • relational < < = > >=
  • bitwise shift << >> >>>
  • addition/subtraction + -
  • multiply/divide * / %
  • negation/increment ! ~ - ++ --
  • call, member () []


Aritmetiske


Almindelig og speciel aritmetisk talbehandling. x x


Addition+Almindelig addition.
v1 = v2 + 2
 
Subtraktion-Almindelig subtraktion.
v1 = v2 -2
 
Multiplikation*Almindelig subtraktion.
v1 = v2*2
 
Division/Almindelig division.
v1 = v2/2
 
Modulus%Beregning af modulus ( restværdi).
v1 = v2%2
 
Forøgelse++Foranstillet forøgelse: v2 forøges med 1 før dens værdi overføres til v1.
v1 = ++v2
 
Efterstillet forøgelse: v1 sættes = v2. v2 forøges efterfølgende med 1.
v1 = v2++
 
Formindskelse--Foranstillet formindskelse: v2 formindskes med 1 før dens værdi overføres til v1.
v1 = --v2
 
Efterstillet formindskelse: v1 sættes = v2. v2 formindskes efterfølgende med 1.
v1 = v2--
 



Sammenlignende


Sammenligninger mellem variablers værdi. Returnerer Boolske resultater: TRUE eller FALSE. x


Lig med==Returnerer true hvis operanterne er ens.
v1 == v2
 
Ikke lig med!=Returnerer true hvis operanterne ikke er ens.
v1 != v2
 
Større end>Returnerer true hvis den venstre operant er større end den højre operant.
v1 > v2
 
Større end eller lig med>=Returnerer true hvis den venstre operant er større end eller lig den højre.
v1 >= v2
 
Mindre end<Returnerer true hvis den venstre operant er mindre end den højre operant.
va < v2
 
Mindre end eller lig med<=Returnerer true hvis den venstre operant er mindre end eller lig den højre operant.
v1 <= v2
 
Nøjagtigt lig med===Returnerer true hvis operanterness værdi og datatype er ens.
v1 === v2
 
Ikke nøjagtigt lig med!==Returnerer true hvis operanternes værdi og / eller datatype er forskellig.
v1 !== v2
 



Logiske


Logiske operatorer. Returnerer Boolske resultater: TRUE eller FALSE. x


Logisk AND && Returnerer true når både v1 og v2 er true. Ellers returneres false.
var resultat = v1 && v2
Logisk OR || Returnerer true når v1 eller v2 er true. Er de begge false returneres false.
var resultat = v1 || v2
Logisk NOT ! v1 vender sin værdi fra true til false eller fra false til true.
var resultat = !v1


Bitvise


2 typer bit-operatorer. 1. Sammenligner de enkelte bits i variablerne. 2 Flytter bitsene sidelæns og udfylder de derved opståede tomme pladser. x


Sammenligning
Bitwise AND & Returnerer bitvis 1 hvis både bit i v1 og v2 har værdien 1.
resultat = v1 & v2
 
Bitwise OR | Returnerer bitvis 1 hvis enten bit i v1 eller v2 har værdien 1.
resultat = v1 | v2.
 
Bitwise XOR ^ Returnerer bitvis 1 hvis enten bit i v1 eller v2, men ikke begge har værdien 1.
resultat = v1 ^ v2.
 
Unary bitwise NOT ~ 1De enkelte bitværdier (incl. fortegn) i v1 vendes fra 0 til 1 eller fra 1 til 0.
resultat = ~v1
 
Flytning
Venstre skift << Bitsene i v1 flyttes v2 pladser til venstre. De udskiftede bits slettes. Der indsættes 0-bits på de ledige pladser i højre side.
Højre skift >> Bitsene i v1 flyttes v2 pladser til højre. De udskiftede bits slettes. Bitten længst til venstre indsættes på de ledige pladser i venstre side.
resultat = v1 >> v2.
Indsæt-nul højre skift >>> Bitsene i v1 flyttes v2 pladser til højre. De udskiftede bits slettes. Der indsættes 0-bits på de ledige pladser i venstre side.
resultat = v1 >>> v2



Assignment


Værdien af variablen til venstre opdateres baseret på operatoren og dataene til højre for den.

Operatorerne (bortset fra '=') er 'shorthand' for hhv. standard aritmetiske operationer og for bitvise operationer. x


Aritmetisk
Assignment = Almindeligt lighedstegn. Sætter variablen v1 = variablen v2.
Aritmetisk addition += Variablen v1 sættes lig oprindelig v1-værdi + v2- værdi.
v1 += v2 betyder v1 = v1 + v2
Aritmetisk subtraction -= Variablen v1 sættes lig oprindelige v1-værdi - v2-værdi.
v1 -= v2 betyder v1 = v1 - v2
Aritmetisk multiplication *= Variablen v1 sættes lig oprindelig v1-værdi * v2-værdi.
v1 *= v2 betyder v1 = v1 * v2
Aritmetisk division /= Variablen v1 sættes lig oprindeling v1-værdi / v2-værdi.
v1 /= v2 betyder v1 = v1 / v2
Bitwise
Bitvis left shift <<= Dataene i v1 flyttes v2 antal bits til venstre. Konverterer v1 fra at være flydende komma tal til at være 32 bit heltal
v1 <<= v2 betyder v1 = v1 << v2
Bitvis right shift >>= Dataene i v1 flyttes v2 antal bits til højre. Konverterer v1 fra at være et 32 bit heltal til at være et flydende komma tal.
v1 >>= v2 betyder v1 = v1 >> v2
Bitvis zero fill right shift >>>= Dataene i v1 flyttes v2 antal bits til højre. Konverterer v1 fra at være et flydende komma tal til at være et 32 bit heltal.
v1 >>>= betyder v1 = v1 >>> v2
Bitvis NOTKonverterer v1 fra at være flydende komma tal til at være 32 bit heltal. Vender alle bits og returnerer værdien som et flydende komma tal. Gør tallet negativt og trækker 1 fra.
Bitvis AND &= Konverterer v1 og v2 fra at være flydende komma tal til at være 32 bit heltal. Sammenligner de 2 tal bit for bit og returnerer værdien 1 når bitten er 1 i både v1 og v2. Ellers returneres 0.
v1 &= v2 betyder v1 = v1 & v2
Bitvis XOR ^= Konverterer v1 og v2 fra at være flydende komma tal til at være 32 bit heltal. Sammenligner de 2 tal bit for bit og returnerer værdien 1 når bitten er forskellig i v1 og v2. Ellers returneres 0.
v1 ^= v2 betyder v1 = v1 ^ v2
Bitvis OR | Konverterer v1 og v2 fra at være flydende komma tal til at være 32 bit heltal. Sammenligner de 2 tal bit for bit og returnerer værdien 1 når bitten er 1 blot 1 af v1 og v2. Ellers returneres 0.
v1 |= v2 betyder v1 = v1 | v2


Streng


Sammenkædning af 2 strenge ved konkatenering. x


String concatenation + Konkatenering af variabler. 
String concatenation += Kort form til konkatenering af variabler. 


Specielle


Operatorer af vidt forskellig karakter.


Betinget operator ? : Kort version af if-sætning.
var mood = (smile==true) ? happy : sad . Hvis smile = true så er mood = happy ellers er mood = sad.
x
Komma operator , Separator til brug i flere forskellige sammenhænge.
var k=0, i, j=0;
for (i = 0; i < 10; i++, j++)
x
SletdeleteAnvendes til sletning af et objekt, et objekts property eller et element i en array. Returnerer Boolsk resultat.
delete someobject
delete someObject.property
delete someArray[index]
x
IninUndersøger om anført property er indeholdt i anført objekt. Returnerer Boolsk resultat.
if ("phone" in myObject)
document.write ("property is present");
else
document.write ("property is not present");
x
Instance ofinstanceofKontrollerer om et objekt indeholder data af anført type. Returnerer Boolsk resultat.
var color1 = new String("green");
color1 instanceof String; // returns true
x
new!!!!!!!!!!!!!!!!!!!!!. x
thisthis
this.property
Nøgleord, der anvendes til at referere til aktuelt objekt. Refererer til det kaldende objekt i en metode.
this[.propertyName]

<B>Enter a number between 18 and 99:</B>
<INPUT TYPE = "text" NAME = "age" SIZE = 3 onChange="validate(this, 18, 99)">
x
typeof typeof Returnerer typen på den testede variabel. Nyttig ved fejlfinding.

alert(typeof "Hello World") Returnerer "string"
alert(typeof (2 + 2)) Returnerer "number"
alert(typeof true) Returnerer "boolean"
alert(typeof cow) Returnerer "undefined" /cow er ikke blevet initialiseret som en variabel)
alert(typeof ('2' + 2)) Returnerer "string" (Konkatenering af en streng og et tal resulterer i en streng)
x
voidvoid(0)Returnerer en null-værdi. Browsere vil derved ikke være i stand til at indlæse en ny side. Kan ikke bruges uden en værdi.
<a href="javascript: void(0)">I am a useless link</a>
<a href="javascript: void(myNum=10);alert('myNum = '+myNum)">Set myNum Please</a>
x


Backslash Escape Characters


Særlige styrekarakterer med brøkstreg som 'fortegn'.

\''Enkelt anførselstegn
\""Dobblet anførselstegn
\\\Enkelt backslash
\bBackspaceFlytter markøren ét tegn tilbage
\fFormfeedSideskift på printeren
\nNewlineLinieskift
\rReturnFlytter markøren til starten af linien
\tTabulatorTabulator
\aAlertUdløser BEEP-lyd
\vTabulatorVertikal tabulator
\0NullNull character
\cXCtrl XX = pladsholder for det bogstav der skal trykkes samtidig med CTRL-tasten.































































x
x