Deklaracja zmiennej VBScript z typami danych: Dim, String, Boolean

Zmienne stanowiฤ… podstawฤ™ programowania. Zmienne sล‚uลผฤ… do przechowywania wartoล›ci lub wyraลผenia. Ilekroฤ‡ masz kawaล‚ek danych do pracy, bฤ™dziesz musiaล‚ zadeklarowaฤ‡ zmiennฤ….

Na przykล‚ad, jeล›li musisz przechowywaฤ‡ nazwiska studentรณw lub pensje pracownikรณw, bฤ™dziesz uลผywaฤ‡ zmiennych o nazwach studenci lub pensje.

Zmiennych moลผna takลผe uลผywaฤ‡ do przechowywania wyraลผeล„. Zaล‚รณลผmy, ลผe przechowujesz oceny ucznia z jฤ™zyka angielskiego i matematyki za pomocฤ… zmiennych markE i markM.

Chcesz znaleลบฤ‡ ล‚ฤ…cznฤ… liczbฤ™ znakรณw. Nastฤ™pnie moลผesz uลผyฤ‡ zmiennej o nazwie markT i ustawiฤ‡ jej wartoล›ฤ‡ na markE + markM. Innymi sล‚owy, markT = markE + markM. Tutaj markT jest zmiennฤ… przechowujฤ…cฤ… wyraลผenie.

Deklarowanie zmiennych

Deklarowanie zmiennych jest tym samym, co tworzenie zmiennych, poniewaลผ instruujesz komputer, aby zarezerwowaฤ‡ miejsce w pamiฤ™ci. Moลผesz nazwaฤ‡ zmiennฤ… tak, jak chcesz. Mogฤ… to byฤ‡ krรณtkie nazwy, takie jak x, y lub z, lub bardziej samoopisujฤ…ce siฤ™ nazwy, takie jak student, imiฤ™ i nazwisko, wynagrodzenie itp. Nadawanie zmiennym jasnych i znaczฤ…cych nazw jest uwaลผane za dobrฤ… praktykฤ™ programistycznฤ….

Istniejฤ… pewne zasady dotyczฤ…ce nazw zmiennych VBScript.

  1. Nazwa zmiennej musi zaczynaฤ‡ siฤ™ od litery. Przykล‚ady: salary, mark itd. Zmienne zaczynajฤ…ce siฤ™ od cyfr lub znakรณw specjalnych sฤ… niedozwolone. Przykล‚ady: 1stSchool, 3rdCar, _name itd.
  2. Nazwa zmiennej nie moลผe przekraczaฤ‡ 255 znakรณw.
  3. Nazwa zmiennej nie powinna zawieraฤ‡ kropki (.).

Do deklarowania zmiennych naleลผy uลผyฤ‡ sล‚owa kluczowego Dim. Zaล‚รณลผmy, ลผe planujesz uลผyฤ‡ zmiennej o nazwie โ€žwynagrodzenieโ€ w pliku Program VBScript, skล‚adnia

Dim salary;

Samo zadeklarowanie zmiennych VBS nie pomoลผe, uลผyj tego. W pewnym momencie bฤ™dziesz musiaล‚ przypisaฤ‡ do niej wartoล›ฤ‡ i proces ten nazywany jest inicjowaniem zmiennej. Jeล›li planujesz zadeklarowaฤ‡ wynagrodzenie o zmiennej nazwie, moลผesz zakodowaฤ‡ w ten sposรณb:

Dim salary
salary = 10000

Najwaลผniejszฤ… rzeczฤ…, o ktรณrej musisz pamiฤ™taฤ‡, jest to, ลผe nie powinieneล› przypisywaฤ‡ wartoล›ci zmiennej podczas jej deklarowania. Zaล‚รณลผmy, ลผe napiszesz takie oล›wiadczenie:

Dim salary = 10000

Jeล›li sprรณbujesz wypisaฤ‡ wynagrodzenie za pomocฤ… document.write, nie zwrรณci to ลผadnego wyniku.

Przykล‚ad kodu

Krok 1) Otwรณrz edytor tekstu i dodaj nastฤ™pujฤ…ce wiersze kodu.

<html>
<head>
<title>Variables</title>
</head>
<body>

<script type="text/vbscript">
Dim variable1
variable1="John"
document.write(variable1)
โ€˜Dim variable2 = "Smith"
โ€˜document.write(variable2)
</script>

</body>
</html>

Krok 2) Zapisz ten plik jako variable.html w preferowanej lokalizacji, a nastฤ™pnie otwรณrz go w IE (postฤ™pujฤ…c zgodnie z krokami okreล›lonymi w poprzednim rozdziale). Teraz zobaczysz wartoล›ฤ‡ John w przeglฤ…darce.

Krok 3) Nastฤ™pnie odkomentuj wiersze nr 11 i 12

Ponownie zapisz plik i odล›wieลผ przeglฤ…darkฤ™ IE, jeล›li jest juลผ otwarta lub otwรณrz plik w przeglฤ…darce IE. Moลผesz siฤ™ dziwiฤ‡, ลผe nic nie widzisz; ani Johna, ani Smitha. Problem polega na tym, ลผe prรณbowaล‚eล› przypisaฤ‡ wartoล›ฤ‡ do zmiennej, deklarujฤ…c jฤ…, co jest niedozwolone.

Luลบne wiฤ…zanie

VBScript zapewnia swobodฤ™ uลผywania zmiennych bez ich deklarowania (tzw. luลบne wiฤ…zanie). Na przykล‚ad, nie majฤ…c instrukcji Dim student, moลผesz przypisaฤ‡ wartoล›ฤ‡ zmiennej student, np. โ€“ student = โ€žJohnโ€

Jednak wcale nie jest to dobra praktyka programistyczna. Jeล›li uลผyjesz zmiennej bez jej zadeklarowania i bล‚ฤ™dnie napiszesz tฤ™ samฤ… zmiennฤ… podczas jej ponownego uลผycia, VBScript nie wyล›wietli monitu o bล‚ฤ™dzie.

Aby wiฤ™c uล‚atwiฤ‡ odczytanie kodu i identyfikacjฤ™ bล‚ฤ™dรณw, powinieneล› uลผyฤ‡ instrukcji Option Explicit na poczฤ…tku kodu, dziฤ™ki czemu bฤ™dziesz zmuszony zadeklarowaฤ‡ wszystkie zmienne, nawet jeล›li o tym zapomnisz. Aby uniknฤ…ฤ‡ problemรณw zwiฤ…zanych z typem zmiennej, zawsze dobrze jest podaฤ‡ instrukcjฤ™ Option Explicit na poczฤ…tku kodu VBScript.

Przykล‚ad kodu:

Krok 1) Otwรณrz edytor tekstu i dodaj nastฤ™pujฤ…ce wiersze kodu.

<html>
<body>
<script type="text/vbscript">
Option Explicit
โ€˜Dim markE, markM, markT
markE=90
markM=86
markT=markE+markM
document.write("Your marks in English is " & markE & "." & "<br />")
document.write("Your marks in Mathematics is " & markM & "." & "<br />")
document.write("Your total marks is " & markT & ".")
</script>

</body>
</html>

Krok 2) Zapisz plik jako zmienne.html w preferowanej lokalizacji. Teraz otwรณrz plik w przeglฤ…darce Internet Explorer, a ekran bฤ™dzie pusty. Dlaczego ? poniewaลผ uลผyล‚eล› opcji jawnych, ale nie zadeklarowanych zmiennych przed ich uลผyciem

Krok 3) Aby teraz zrozumieฤ‡ znaczenie instrukcji Option Explicit, odkomentuj liniฤ™ 5 w powyลผszym kodzie

Krok 4) Zapisz plik zmienne.html i odล›wieลผ przeglฤ…darkฤ™. Teraz Twoje dane wyjล›ciowe bฤ™dฤ… wyglฤ…daฤ‡ nastฤ™pujฤ…co:

Luลบne wiฤ…zanie

Note โ€“ Aby poล‚ฤ…czyฤ‡ dwa ciฤ…gi znakรณw, naleลผy uลผyฤ‡ โ€ž&โ€. W powyลผszym przykล‚adzie jest ono uลผyte w poleceniu document.write. Oczywiste jest, ลผe obliczenie ล‚ฤ…cznej liczby ocen jest bล‚ฤ™dne. Teraz wystarczy dodaฤ‡ pierwszฤ… instrukcjฤ™ Option Explicit na poczฤ…tku kodu VBScript (bez instrukcji Dim).

Zapisz plik i zobacz wynik. Nie otrzymasz niczego jako wyniku, co wskazuje, ลผe w Twoim kodzie wystฤ…piล‚ bล‚ฤ…d. Tutaj bล‚ฤ…d polega na tym, ลผe nie zadeklarowaล‚eล› zmiennych przed ich uลผyciem, nawet po okreล›leniu instrukcji Option Explicit.

Moลผesz takลผe deklarowaฤ‡ zmienne za pomocฤ… publicznych i prywatnych sล‚รณw kluczowych, np. student publiczny lub student prywatny. Musisz jednak zachowaฤ‡ wiฤ™kszฤ… ostroลผnoล›ฤ‡ podczas uลผywania tych dwรณch sล‚รณw kluczowych do deklarowania zmiennych, poniewaลผ zmieni to zakres zmiennych.

Moลผna takลผe przechowywaฤ‡ wiele wartoล›ci w jednej zmiennej i takie zmienne sฤ… nazywane Tablica VBScript zmienne. Zaล‚รณลผmy, ลผe chcesz przechowywaฤ‡ dane takie jak imiฤ™, oceny, adres itp. 30 uczniรณw. Bฤ™dzie naprawdฤ™ trudno utworzyฤ‡ i zarzฤ…dzaฤ‡ zestawami 30 zmiennych dla imion, ocen, adresรณw itp.

Zamiast tego moลผesz zadeklarowaฤ‡ pojedynczฤ… zmiennฤ… o nazwie studenci i zapisaฤ‡ w niej nazwiska wszystkich 30 uczniรณw. W takim przypadku zadeklarujesz zmiennฤ… jako Dim studenci(29) (indeks tablicy zaczyna siฤ™ od zera) i przypiszesz wartoล›ci jako

students(0) = "John"
students(1) = "Hannah"
students(2) = "Kevin"
.......
.......
students(28) = "Rose"
students(29) = "Emma"

Podobnie moลผesz tworzyฤ‡ zmienne, takie jak oceny, adresy itp., aby przechowywaฤ‡ odpowiednie wartoล›ci wszystkich 30 uczniรณw. Moลผna takลผe tworzyฤ‡ tablice wielowymiarowe posiadajฤ…ce do 60 wymiarรณw.

Przykล‚ad kodu:

Otwรณrz edytor tekstu i dodaj nastฤ™pujฤ…ce wiersze kodu.

<html>
<body>

<script type="text/vbscript">
Option Explicit
Dim students(19), marks(19)
students(0) = "John"
marks(0) = 95
students(1) = "Emma"
marks(1) = "83"
students(2) = "Kevin"
marks(2) = 87
 
document.write(students(0) & " has scored " & marks(0)  & ".<br />")
document.write(students(1) & " has scored " & marks(1)  & ".<br />")
document.write(students(2) & " has scored " & marks(2)  & ".<br />")
</script>

</body>
</html>

Tutaj zapisaliล›my szczegรณล‚y tylko trzech studentรณw. Moลผesz dodaฤ‡ szczegรณล‚y do โ€‹โ€‹20 studentรณw, poniewaลผ ustawiliล›my rozmiar tablicy na 20 (poniewaลผ indeks zaczyna siฤ™ od 0).

Typy danych VBScript

W poprzedniej sekcji mogล‚eล› zauwaลผyฤ‡, ลผe przypisaliล›my zmiennym rรณลผne typy danych. Zapisaliล›my liczby (ocenฤ™ i pensjฤ™), ciฤ…gi znakรณw (nazwisko) itp. w rรณลผnych zmiennych.

Te liczby, ciฤ…gi znakรณw itp. sฤ… znane jako typy danych. W rzeczywistoล›ci VBScript ma tylko jeden typ danych o nazwie Variant. Wariant to specjalny rodzaj typu danych, ktรณry moลผe przechowywaฤ‡ rรณลผne rodzaje informacji.

Jeล›li uลผyjesz wariantu w kontekล›cie liczbowym, zachowa siฤ™ on jak liczba, a gdy uลผyjesz go w kontekล›cie ciฤ…gu znakรณw, zachowa siฤ™ jak ciฤ…g znakรณw.

Innymi sล‚owy, jeล›li okreล›lisz wynagrodzenie=10000, VBScript zakล‚ada, ลผe โ€‹โ€‹wynagrodzenie jest typem danych numerycznych. Wariant wprowadza szczegรณlne rozrรณลผnienia dotyczฤ…ce charakteru danych. Na przykล‚ad moลผesz uลผyฤ‡ typu wariantu do przechowywania wartoล›ci logicznych, waluty, daty i tak dalej.

Te rรณลผne kategorie informacji, ktรณre mogฤ… byฤ‡ zawarte w wariancie, nazywane sฤ… podtypami. Chociaลผ przez wiฤ™kszoล›ฤ‡ czasu Variant zachowuje siฤ™ w sposรณb najodpowiedniejszy dla zawartych w nim danych, naleลผy pamiฤ™taฤ‡ o rรณลผnych podtypach.

Poniลผej znajduje siฤ™ lista typรณw danych VBScript.

  • Pusty: Specjalny podtyp reprezentujฤ…cy zmiennฤ…, ktรณrej nie przypisano jeszcze ลผadnej wartoล›ci.
  • Null: Specjalny podtyp reprezentujฤ…cy zmiennฤ… z przypisanฤ… wartoล›ciฤ… null.
  • Liczba caล‚kowita: uลผycie 2 bajtรณw do wyraลผenia liczby caล‚kowitej ze znakiem w zakresie od -32,768 32,767 do XNUMX XNUMX.
  • Dล‚ugie: uลผycie 4 bajtรณw do wyraลผenia liczb caล‚kowitych ze znakiem w zakresie od -2,147,483,648 2,147,483,647 XNUMX XNUMX do XNUMX XNUMX XNUMX XNUMX.
  • Pojedynczy: Uลผywanie 4 bajtรณw do wyraลผania liczb rzeczywistych w formacie zmiennoprzecinkowym w zakresie od -3.402823e38 do -1.401298e-45 dla wartoล›ci ujemnych i od 1.401298e-45 do 3.402823e38 dla wartoล›ci dodatnich.
  • Double:Uลผywa 8 bajtรณw do wyraลผania liczb rzeczywistych w formacie zmiennoprzecinkowym w zakresie od -1.79769313486232e308 do -4.94065645841247e-324 dla wartoล›ci ujemnych i od 4.94065645841247e-324 do 1.79769313486232e308 dla wartoล›ci dodatnich.
  • Waluta: Wykorzystanie 8 bajtรณw do wyraลผania liczb rzeczywistych w formacie dziesiฤ™tnym z zakresu od -922,337,293,685,477.5808 922,337,293,685,477.5807 XNUMX XNUMX XNUMX do XNUMX XNUMX XNUMX XNUMX XNUMX.
  • Data: uลผycie 8 bajtรณw do wyraลผenia dat od 1 stycznia 100 do 31 grudnia 9999 r.
  • Ciฤ…g: wyraลผenie ciฤ…gu znakรณw, ktรณry moลผe skล‚adaฤ‡ siฤ™ z okoล‚o 1 miliardรณw znakรณw, przy uลผyciu 2 bajtu na znak.
  • Obiekt: Specjalny podtyp reprezentujฤ…cy odniesienie do obiektu.
  • Bล‚ฤ…d: specjalny podtyp reprezentujฤ…cy numer bล‚ฤ™du.
  • Wartoล›ฤ‡ logiczna: uลผycie 2 bajtรณw do przechowywania wartoล›ci Prawda lub Faล‚sz.
  • Bajt: uลผycie 1 bajtu do wyraลผenia liczby caล‚kowitej z zakresu od 0 do 255.

Sฤ… dwa wbudowane Funkcje VBScriptu ktรณre pomogฤ… Ci poznaฤ‡ podtyp zmiennej: โ€žvarType()โ€ i โ€žtypeName()โ€.

Typ var zwraca reprezentacjฤ™ numerycznฤ…, a typeName() zwraca reprezentacjฤ™ tekstowฤ… podtypu zmiennej. Kaลผdy podtyp ma predefiniowanฤ… reprezentacjฤ™ numerycznฤ….

Przykล‚ad kodu

Otwรณrz edytor tekstu i dodaj nastฤ™pujฤ…ce wiersze kodu.

<html>
<head>
<script type="text/vbscript">
Option Explicit
Dim a
a = Empty
document.write("a = " & a & "<br />")
document.write("The numeric representation of a is " & VarType(a)  & "<br />")
document.write("The variable a is of " & TypeName(a) & " data type."  & "<br /><br />")

Dim b
b = Null
document.write("b = " & b & "<br />")
document.write("The numeric representation of b is " & VarType(b)  & "<br />")
document.write("The variable b is of " & TypeName(b) & " data type."  & "<br /><br />")

Dim c
c = 4
document.write("c = " & c & "<br />")
document.write("The numeric representation of c is " & VarType(c)  & "<br />")
document.write("The variable c is of " & TypeName(c) & " data type."  & "<br /><br />")

Dim d
d = -2100483648
document.write("d = " & d & "<br />")
document.write("The numeric representation of d is " & VarType(d)  & "<br />")
document.write("The variable d is of " & TypeName(d) & " data type."  & "<br /><br />")

Dim e
e = -3.402823E38
document.write("e = " & e & "<br />")
document.write("The numeric representation of e is " & VarType(e)  & "<br />")
document.write("The variable e is of " & TypeName(e) & " data type."  & "<br /><br />")

Dim f
f = "John"
document.write("f = " & f & "<br />")
document.write("The numeric representation of f is " & VarType(f)  & "<br />")
document.write("The variable f is of " & TypeName(f) & " data type."  & "<br /><br />")

Dim g
g = True
document.write("g = " & g & "<br />")
document.write("The numeric representation of g is " & VarType(g)  & "<br />")
document.write("The variable g is of " & TypeName(g) & " data type."  & "<br /><br />")
</script>

</head>
<body>
</body>
</html>

Zapisz plik jako subtype.html i otwรณrz go w IE. Twoje dane wyjล›ciowe bฤ™dฤ… wyglฤ…daฤ‡ nastฤ™pujฤ…co:

Typy danych VBScript

UWAGA: Moลผesz takลผe zadeklarowaฤ‡ zmienne za pomocฤ… publiczny oraz prywatny sล‚owa kluczowe, takie jak student publiczny lub student prywatny. Musisz jednak zachowaฤ‡ wiฤ™kszฤ… ostroลผnoล›ฤ‡ podczas uลผywania tych dwรณch sล‚รณw kluczowych do deklarowania zmiennych, poniewaลผ zmieni to zakres zmiennych.

Podsumowanie

  • Zmienne sล‚uลผฤ… do przechowywania wartoล›ci lub wyraลผenia podczas programowania. Zmienne naleลผy deklarowaฤ‡ i inicjowaฤ‡ oddzielnie.
  • Chociaลผ moลผna uลผywaฤ‡ zmiennych bez deklarowania, zadeklarowanie zmiennych przed ich uลผyciem jest uwaลผane za dobrฤ… praktykฤ™ programistycznฤ….
  • Wariant jest jedynym typem danych VBScript i ma rรณลผne podtypy, w tym ciฤ…g, wartoล›ฤ‡ logicznฤ…, liczbฤ™ caล‚kowitฤ…, walutฤ™ itp.

Rozwiฤ…zywanie problemรณw

Jeล›li po uruchomieniu kodu zobaczysz pustฤ… stronฤ™, wykonaj nastฤ™pujฤ…ce czynnoล›ci

  • Naciล›nij klawisz F12, aby otworzyฤ‡ narzฤ™dzia programistyczne
  • Na lewym pasku narzฤ™dzi przewiล„ w dรณล‚, aลผ zobaczysz stronฤ™ ustawieล„ โ€žEmulacjaโ€.
  • Zmieล„ tryb dokumentu z domyล›lnego (โ€žKrawฤ™dลบโ€) na 10
  • Dodaj nastฤ™pujฤ…cy kod do nagล‚รณwka
    <meta http-equiv="x-ua-compatible" content="IE=10">

Podsumuj ten post nastฤ™pujฤ…co: