[Sisällys] [Seuraava]

Yleistä JavaScriptin syntaksista

Käskysanat ja muut varatut sanat
kirjoitetaan aina pienellä. Käskysanoja ovat esimerkiksi for ja while. Muita varattuja sanoja esimerkiksi this ja new.
Muuttujien, funktioiden ja luokkien nimissä
sallittuja kirjaimia ovat pienet kirjaimet (a-z), suuret kirjaimet (A-Z), numerot (0-9), alaviiva (_) ja dollarinmerkki ($). Nimet eivät saa alkaa numerolla eivätkä ne saa sisältää skandinaavisia kirjaimia (åäöÅÄÖ). Isot ja pienet kirjaimet tulkitaan eri merkeiksi.
HTML-tageihin viittaavissa metodinimissä
kuten image.SRC (tai image.src) ei ole suurilla ja pienillä kirjaimilla eroa, kuten ei html-kielessäkään.
Välilyönti- ja tabulaattori-merkit
jätetään huomiotta ohjelmaa suoritettaessa. Niillä on merkitystä ainoastaan muuttujien, käskysanojen ja numeroiden erottimena.
Rivinvaihto
toimii pääasiassa käskyjen erottimena. Rivinvaihdon tilalla voidaan erottimena käyttää myös puolipistettä. Joissakin käskyissä, kuten if-käskyssä rivinvaihtomerkin voi sijoittaa myös keskelle käskyä ilman, että se tulkitaan käskyn lopetusmerkiksi. Tämä seikka aiheuttaa sen, että jos halutaan esimerkiksi määritellä while-lause, joka sisältää ainoastaan ehdon ja itse runko on tyhjä, on käskyn perässä käytettävä puolipistettä, jotta seuraavaa käskyä ei tulkittaisi luupin rungoksi.


Tietotyypit

Perustyypit JavaScript-kielessä ovat number, boolean ja undefined. Liukuluvut ja kokonaisluvut ovat tyyppiä number ja boolean-tyypillä on vain kaksi mahdollista arvoa, true ja false.

Referenssityyppejä ovat merkkijono, objekti ja funktio. Merkkijonojen vertailu tapahtuu kuitenkin vertailemalla merkkejä, ei referenssejä.

Jokaisella tyypillä on vastaava luokkansa: Boolean, Number, String, Object, Function. JavaScript konvertoi arvot objekteiksi luomalla arvosta vastaavantyyppisen objektin.

Muuttujien tyyppiä ei määritellä niitä luodessa. Muuttujan tyyppi määräytyy sen mukaan mikä arvo siihen on asetettu.

Muuttujalle voi lisätä jäsenmuuttujia milloin tahansa ja näin tehdä siitä objektin. Jäsenmuuttujan lisäys vaikuttaa tällöin kuitenkin ainoastaan kyseiseen muuttujaan. Jäsenmuuttujia on mahdollista lisätä kaikkiin jo olemassaoleviin instansseihin prototyyppiä muokkaamalla.

Kokonaisluku
JavaScript käyttää 32-bittisiä kokonaislukuja. Kokonaislukuliteraalit voidaan antaa joko kymmenjärjestelmämuodossa (esim. 123), heksadesimaali muodossa 0x tai 0X -etuliitteen avulla (esim. 0xFA1) tai oktaalimuodossa 0-etuliittellä (esim. 0240).
Liukuluku
Liukulukuvakiot voivat olla joko tutun muotoisia (1234.0), desimaalipisteellä tai ilman, tai sitten ne voivat olla ns. tieteellisessä notaatiossa kuten 1.2e-10.
Boolean
Boolean-arvot ovat totuusarvoja joko arvoltaan true tai false.
Merkkijono
Merkkijonot ovat hipsujen ' tai kaksoishipsujen " väliin kirjoitettuja merkkijoukkoja. Merkkijonot voivat sisältää tavallisten merkkien lisäksi escape-merkkejä kuten "\n", joka tarkoittaa rivinvaihtoa sekä "\t", joka tarkoittaa tabulaattorimerkkiä. Objektit konvertoidaan automaattisesti merkkijonoiksi merkkijonojen yhdistelyoperaattoria (+) käytettäessä toString()-metodin avulla.
Objekti
Objektit ovat muuttujaan asetettuja tietueita, jotka voivat sisältää useita tietotyyppejä, mukaan lukien funktiot ja toiset objektit. Mitään objektivakiota ei ole olemassa, vaan kaikki objektin instanssit ovat aina jossain muuttujassa. Ainoa objekteihin liittyvä vakio on null, joka tarkoittaa määrittelemätöntä objektireferenssiä.


Escape-koodit

Merkkijonoissa voidaan erikoismerkkejä käyttää escape-koodien avulla. JavaScript tunnistaa seuraavat escape-koodit:

  \b     (backspace BS)
  \t     (horizontal tab HT )
  \n     (linefeed LF )
  \f     (form feed FF )
  \r     (carriage return CR )
  \"     (double quote " )
  \'     (single quote ' )
  \\     (backslash \ )
  \##    (octal code ##)
  \x##   (hexadecimal code ##)


Kommentit

Kommenttien syntaksi on samanlainen kuin Java- ja C++ -kielissä:

  1. Rivin alussa olevat kaksi jakoviivaa // kertovat tulkille, että loppurivi on kommentti.
  2. Moniriviset kommentit alkavat /* -merkillä ja loppuvat */ -merkkiin.

Esimerkki

// Kommenttiteksti /* Hieman pitempi kommentti, joka jatkuu toiselle riville */

Simo.Sarkka@iki.fi