|
|
&Javascript |
Variabler
Datatyper
Specielle tegn
Operatorer
Kommentarer
Variabler kan evt erklæres med 'var'. En variabel kan indeholde alle datatyper.
Variabelnavne
a-z, A-Z, 0-9, _ (ikke æ, ø, å).
Der er forskel på store og små bogstaver: 'navn' og 'Navn' er forskellige.
Variabler kan erklæres med 'var' - men det er ikke nødvendigt for globale variabler.
| var Antal = 15 Navn = "Hansen" Form_Val = form.Navn.value |
Globale variable
Variabler erklæret udenfor funktioner er globale - de kan benyttes overalt.
Det gør ingen forskel her, om man benytter var.
Lokale variable
Variabler erklæret med var i funktioner er lokale - de kan kun benyttes i denne
funktion.
Variabler erklæret uden var er globale.
Eksempel
Koden herunder giver dette resultat:
Abekat Bavian
Anemone Bavian
<HTML><HEAD>
<script>
A = "Abekat";
var B = "Bavian";
function F()
{ A = "Anemone";
var B = "Bellis";
}
function W()
{ document.write(A + " ");
document.write(B + "<br>");
}
</script>
</HEAD>
<BODY>
<SCRIPT>
W(); F(); W();
</SCRIPT>
</BODY></HTML>
|
Der er fire grundlæggende datatyper:
| number | både heltal (Integer) og flydende kommatal (Floating-point number)
|
||||||||||||||||
| boolean | true (= 1) eller false (= 0) | ||||||||||||||||
| string | tekst - fx: "Hello World", 'Hej med dig' en tekst-streng er et objekt af typen String >Specielle tegn |
||||||||||||||||
| null | værdien på en ikke-defineret variabel |
Javascript kan ofte konverterer automatisk mellem datatyper.
JavaScript - Specielle tegn
| \a | Alert = Beep | |
| \b | Backspace - flytter markøren ét tegn tilbage | |
| \f | Formfeed - sideskift på printeren | |
| \n | Newline - linieskift | |
| \r | Return - flytter markøren til starten af linien | |
| \t | Tabulator | |
| \" | " | |
| \' | ' | |
| \\ | \ |
| eksempler: |
| document.write("Linje 1\nLinje 2") |
| NB: det er kun i HTML-koden, at '\n' giver linjeskift - ikke på
skærmen. Normalt har linjeskift i koden ingen betydning, så der er normalt ikke brug for '\n'. Linjeskift på skærmen laves med '<BR>': |
| document.write("Linje 1<BR>Linje 2") |
| document.write("de \"gamle\" kommer") | de "gamle" kommer |
| document.write("filerne ligger i C:\\DOS") | filerne ligger i C:\DOS |
JavaScript - Operatorer
Tildeling
Aritmetik
Tekst
Sammenligning
Logik
JavaScript - Operatorer - Tildeling
x = 5 x = "hello" x = y = z = 0; //alle = 0
x = (Alder <= 18) ? "ingen adgang" : "kom indenfor"
//if(Alder <= 18){x="ingen adgang"} else{x="kom indenfor")
x = ++y; //y = y+1; x = y x = y++; //x = y; y = y+1 x = --y x = y-- |
JavaScript - Operatorer - Aritmetik
x = a + 1 x = a - 2 x = a * b x = a / b x = a % 2 //a modulus 2 |
NB: ved division med 0 returnerer JavaScript ikke 'fejl' men '0' !!!
x += 1; //x = x + 1 x -= 2; //x = x - 2 x *= y; //x = x * y x /= x; //x = x / x x %= 2; //x = x % 2 |
JavaScript - Operatorer - Tekst
m = " "; tekst = "Hello" + m + "World"; //'Hello World' |
JavaScript - Operatorer - Sammenligning
x > y x < y x == y x >= y x <= y x != y //ikke = |
JavaScript - Operatorer - Logik
| && | AND | |
| || | OR | |
| ! | NOT |
| x > 2 && x < 5; //(x>2) and (x<5) x == 2 || x == 3; //(x=2) or (x=3) x == !(y > 5); //x = not(y>5) |
JavaScript - Operatorer - Bit-logik
| & | AND | |
| | | OR | |
| ^ | XOR | |
| << | Shift left | |
| >> | Shift right | |
| >>> | Shift right - zero fill left |
| Eksempel: XOR-operatoren (^) kan benyttes som bitvender. Koden herunder giver dette resultat:
|
<HEAD>
<script>
function bitval(s)
{ return parseInt(s, 2);
}
function bits(n)
{ s = "";
b = 1;
for(i=7; i>-1; i--)
{ s = (n & b? "1" : "0") + s;
b += b;
}
return s;
}
</script>
</HEAD>
<BODY>
<script>
s1 = "01100101";
s2 = "11111111";
x = bitval(s1) ^ bitval(s2);
s3 = bits(x);
document.write(s1 + " XOR " + s2 + " = " + s3);
</script>
</BODY>
|
Funktionen 'bits' herover returnerer en tekststreng på 8 tegn - "0" eller
"1".
Hvis den returnerede tekststreng kun skal indeholde det nød vendige antal bits - uden
foranstillede "0"er - kan funktionen herunder benyttes:
function bits(n)
{ s = "";
while(n>0)
{ s = (n & 1? "1" : "0") + s;
n = n >>> 1;
}
return s;
}
|
Javascript understøtter to slags kommentarer:
//udregn areal a = 2*pi*r*r //pi = 3.1416 |
/* Denne funktion udregner ugenummeret baseret på pc'ens dato-indstilling */ |