VBScript

ASP-koulutus / kurssit v. 2008

Kurssit saatavilla kautta Suomen. Tule, tutustu ja varaa oma koulutustapahtumasi jo tänään. Kurssit järjestää IT-koulutuksen asiantuntijasi, Koulutus- ja konsultointipalvelu KK Mediat

 

Muuttujat ja vakiot

Muuttujat

Muuttujalla (variable) tarkoitetaan sijaintia tietokoneen muistissa, jonne voidaan tallentaa muutettavissa olevaa tietoa komentosarjan suorituksen aikana. Muuttujaan voidaan tallentaa esimerkiksi numero, päivämäärä tai vaikkapa merkkijono, jonka arvo voi muuttua esimerkiksi käyttäjän toimenpiteen tai kellonajan mukaan.

Alla on yksinkertainen esimerkki muuttujan määrittelemisestä ja käyttämisestä:


'määrittelee muuttujan
Dim muuttuja
'sijoittaa muuttujaan arvon
muuttuja = "arvo"

Muuttuja määritellään varatulla sanalla Dim, joka mahdollistaa muuttujan käyttämisen kaikissa proseduureissa saman komentosarjan sisällä. Mikäli muuttuja halutaan ottaa käyttöön koko projektissa, tulee se määritellä varatulla sanalla Public:


Public muuttuja
muuttuja="jokin arvo"

Kolmas mahdollinen tapa määritellä muuttuja, on julistaa se yksityiseksi. Tällöin muuttuja on käytettävissä vain paikallisesti:


Private muuttuja
muuttuja="jokin arvo"

Kaikille yllä oleville muuttujan määrittelytavoille on yhteinen nimittäjä: muuttujan vaikutusalue. Muuttujan vaikutusalueen määrää se, missä kohden komentosarjaa muuttuja määritellään. Jos muuttuja määritellään proseduurin sisällä, ainoastaan proseduuri voi hyödyntää sitä. Tällöin sanotaan että kyseessä on paikallinen proseduurimuuttuja.

Mikäli muuttuja määritellään proseduurin ulkopuolella, kaikki sivulla olevat proseduurit voivat hyödyntää sitä. Tällöin kyseessä komentosarjan muuttuja. Suurin ero vaikutusalueen ohella näillä on elinajassa. Proseduurimuuttujat ovat elossa vain sen ajan, kun ko. proseduuria suoritetaan. Komentosarjan muuttujat ovat käytössä julistuksesta aina komentosarjan suorituksen loppuun asti. Käytännössä tämä mahdollistaa sen, että meillä voi olla monta samannimistä paikallista muuttujaa, koska ne lakkaavat olemasta ennen uuden käyttöönottamista.

Käytännössä edes muuttujan määritteleminen ei ole pakollinen vaihe, vaan muuttuja voidaan ottaa käyttöön ilman sen määrittelemistä. Muuttujan määrittelemiselle on kuitenkin olemassa hyvä peruste, joka selviää seuraavan pienen esimerkin aikana.

Seuraava esimerkki hyödyntää sekä muuttujia että operaattoreita. Sen avulla pystyn seuraamaan vanhenemistani reaaliajassa päivittäin:


<script language="VBScript">
<!-
'muuttujia ei ole erikseen määritelty, koska skripti toimii ilman niitäkin
syntymapaiva = #09/17/1975
'hae muuttujaan tämä päivä
tanaan = Date()
ika = tanaan - syntymapaiva
'Tulostaa näytölle 
document.write "Olen " &ika &" paivaa vanha"
-->
</script>

Muuttujien kanssa työskentelyyn liittyy kuitenkin vielä pari tärkeä asiaa. Mikäli olisimme tehneet yllä olevassa esimerkissä kirjoitusvirheen ja merkinneet muuttujan arvoksi:


ika= tanan-syntymapaiva

Komentosarja ei olisi tällöin huomannut virhettä vaan palauttanut virheellisen lopputuloksen. Tällaisen tilanteen estämiseksi VBScript tarjoaa tarkistusmenetelmän, jota kutsutaan komennolla:


Option Explicit

Komento on sijoitettava ennen muuttujien määrittelyä tai käyttämistä. Se vaatii, että jokainen muuttuja määritellään avainsanalla Dim. Mikäli komentosarjasta löytyy määrittelemätön muuttuja, palauttaa se virheilmoituksen. Yllä oleva esimerkkikoodi muuttuu nyt muotoon:


<script language="VBScript">
<!-
Option Explicit
'määritellään muuttujat
Dim syntymapaiva, tanaan, ika
syntymapaiva = #09/17/1975
'hae muuttujaan tämä päivä
tanaan = Date()
ika = tanaan - syntymapaiva
'Tulostaa näytölle 
document.write "Olen " &ika &" paivaa vanha"
-->
</script>

Toinen tärkeä asia, mikä liittyy muuttujiin on muuttujan uudelleen määrittely. Asiaa ei pidä sekoittaa muuttujan arvon ylikirjoittamiseen. Uudelleen määrittäessä muuttuja alustetaan kokonaan uudelleen. Tämä tapahtuu komennolla ReDim. Esimerkiksi:


ReDim muuttuja

Vakiot

Vakion käsitteen ymmärtää helpoiten, kun sitä ajattelee muuttujana jonka arvoa ei pysty muokkaamaan. Vakiot ovat siis loistava tapa varastoida tietoa, joka tiedetään pysyväksi koko komentosarjan ajan. VBScriptissä vakiot voivat koostua joko merkkijono- tai numerovakioista.

Vakio luodaan käyttämällä varattua sanaa Const:


Const strStringiVakio = "Tämä on merkkijono."
Const intNumeroVakio = 49
Const dPvm = #6-1-97#

VBScript tarjoaa useita valmiita vakioryhmiä, joista on enemmän liitteessä 2.

Tutustu artikkelin muihin osiin:
»»» VBScript »»»Syntaksi
»»» VBScript »»»Tietotyypit
»»» VBScript »»»Muuttujat
»»» VBScript »»»Taulukot
»»» VBScript »»»Operaattorit

Tallenna tämä sivu kirjanmerkkeihin!

 

2kmediat.com, ©2000-2008 Koulutus- ja konsultointipalvelu KK Mediat.
Tekijänoikeuksia koskeva tiedonanto | Tietosuojalausunto | Sivukartta