Δήλωση μεταβλητής VBScript με τύπους δεδομένων: Dim, String, Boolean

Οι μεταβλητές αποτελούν τη βάση του προγραμματισμού. Οι μεταβλητές χρησιμοποιούνται για τη διατήρηση της τιμής ή μιας έκφρασης. Κάθε φορά που έχετε ένα κομμάτι δεδομένων για να εργαστείτε, θα πρέπει να δηλώσετε μια μεταβλητή.

Για παράδειγμα, εάν πρέπει να αποθηκεύσετε ονόματα μαθητών ή μισθούς υπαλλήλων, θα χρησιμοποιήσετε μεταβλητές που ονομάζονται φοιτητές ή μισθοί.

Οι μεταβλητές μπορούν επίσης να χρησιμοποιηθούν για τη διατήρηση παραστάσεων. Ας υποθέσουμε ότι έχετε αποθηκεύσει τους βαθμούς ενός μαθητή στα Αγγλικά και στα Μαθηματικά χρησιμοποιώντας τις μεταβλητές markE και markM.

Θέλετε να βρείτε τους συνολικούς βαθμούς. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε μια μεταβλητή με το όνομα markT και να ορίσετε την τιμή της σε markE + markM. Με άλλα λόγια, markT = markE + markM. Εδώ, το markT είναι μια μεταβλητή που περιέχει μια έκφραση.

Δήλωση μεταβλητών

Η δήλωση μεταβλητών είναι το ίδιο με τη δημιουργία μεταβλητών επειδή δίνετε εντολή στον υπολογιστή να κρατήσει χώρο στη μνήμη. Μπορείτε να ονομάσετε τη μεταβλητή όπως θέλετε. Μπορεί να είναι σύντομα ονόματα όπως x, y ή z ή περισσότερα ονόματα που περιγράφουν τον εαυτό τους, όπως φοιτητής, Όνομα, μισθός κ.λπ. Η παροχή σαφών και ουσιαστικών ονομάτων σε μεταβλητές θεωρείται καλή πρακτική προγραμματισμού.

Υπάρχουν ορισμένοι κανόνες για τα ονόματα μεταβλητών VBScript.

  1. Το όνομα της μεταβλητής πρέπει να ξεκινά με ένα γράμμα. Παραδείγματα: μισθός, βαθμός κ.λπ. Δεν επιτρέπονται μεταβλητές που ξεκινούν με αριθμούς ή ειδικούς χαρακτήρες. Παραδείγματα: 1stSchool, 3rdCar, _name κ.λπ.
  2. Το όνομα της μεταβλητής δεν μπορεί να υπερβαίνει τους 255 χαρακτήρες.
  3. Το όνομα της μεταβλητής δεν πρέπει να περιέχει τελεία (.).

Για τη δήλωση μεταβλητών, πρέπει να χρησιμοποιήσετε τη λέξη-κλειδί Dim. Ας υποθέσουμε ότι σκοπεύετε να χρησιμοποιήσετε μια μεταβλητή με το όνομα "μισθός" στο δικό σας Πρόγραμμα VBScript, σύνταξη

Dim salary;

Απλώς η δήλωση των μεταβλητών VBS δεν θα σας βοηθήσει, χρησιμοποιήστε το. Θα πρέπει να του εκχωρήσετε μια τιμή σε κάποιο σημείο ή άλλο και αυτή η διαδικασία είναι γνωστή ως αρχικοποίηση της μεταβλητής. Εάν σκοπεύετε να δηλώσετε έναν μισθό με μεταβλητό όνομα, τότε μπορείτε να κωδικοποιήσετε ως εξής:

Dim salary
salary = 10000

Το σημαντικό πράγμα που πρέπει να βεβαιωθείτε είναι ότι δεν πρέπει να εκχωρήσετε μια τιμή στη μεταβλητή όπως και όταν τη δηλώνετε. Ας υποθέσουμε ότι γράφετε μια δήλωση όπως αυτή:

Dim salary = 10000

Εάν προσπαθήσετε να εξάγετε μισθό χρησιμοποιώντας το document.write, δεν θα επιστρέψει κανένα αποτέλεσμα.

Παράδειγμα κώδικα

Βήμα 1) Ανοίξτε το πρόγραμμα επεξεργασίας κειμένου και προσθέστε τις ακόλουθες γραμμές κώδικα.

<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>

Βήμα 2) Αποθηκεύστε αυτό το αρχείο ως variable.html στην προτιμώμενη τοποθεσία σας και, στη συνέχεια, ανοίξτε το στον IE (ακολουθώντας τα βήματα που καθορίστηκαν στο προηγούμενο κεφάλαιο). Τώρα, θα δείτε την τιμή John στο πρόγραμμα περιήγησης.

Βήμα 3) Στη συνέχεια, αφαιρέστε το σχόλιο # 11 & 12

Αποθηκεύστε ξανά το αρχείο και ανανεώστε το πρόγραμμα περιήγησης IE εάν είναι ήδη ανοιχτό ή ανοίξτε το αρχείο στο πρόγραμμα περιήγησης IE. Μπορεί να αναρωτιέστε ότι δεν βλέπετε τίποτα. ούτε ο Τζον ούτε ο Σμιθ. Το πρόβλημα εδώ είναι ότι προσπαθήσατε να εκχωρήσετε την τιμή στη μεταβλητή ενώ τη δηλώνατε, κάτι που δεν επιτρέπεται.

Χαλαρό δέσιμο

Το VBScript σάς παρέχει την ελευθερία να χρησιμοποιείτε μεταβλητές χωρίς να τις δηλώνετε (ονομάζεται χαλαρή δέσμευση). Για παράδειγμα, χωρίς να έχετε την πρόταση Dim student, μπορείτε να αντιστοιχίσετε μια τιμή στη μεταβλητή student όπως – student = “John”

Όμως, δεν είναι καθόλου καλή πρακτική προγραμματισμού. Εάν χρησιμοποιείτε μια μεταβλητή χωρίς να τη δηλώσετε και γράψετε λάθος την ίδια μεταβλητή όταν τη χρησιμοποιήσετε ξανά, το VBScript δεν θα σας ζητήσει το σφάλμα.

Έτσι, για να διευκολύνετε την ανάγνωση του κώδικα και τον εντοπισμό των σφαλμάτων, θα πρέπει να χρησιμοποιήσετε τη δήλωση Option Explicit στην αρχή του κώδικά σας, ώστε να αναγκαστείτε να δηλώσετε όλες τις μεταβλητές σας ακόμα κι αν ξεχάσετε να το κάνετε. Για να αποφύγετε ζητήματα που σχετίζονται με τον τύπο μεταβλητής, είναι πάντα καλό να προσδιορίζετε τη δήλωση Option Explicit στην αρχή του κώδικα VBScript.

Παράδειγμα κώδικα:

Βήμα 1) Ανοίξτε το πρόγραμμα επεξεργασίας κειμένου και προσθέστε τις ακόλουθες γραμμές κώδικα.

<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>

Βήμα 2) Αποθηκεύστε το αρχείο ως variables.html στην τοποθεσία που προτιμάτε. Τώρα ανοίξτε το αρχείο στον Internet Explorer και η οθόνη σας είναι κενή. Γιατί ? επειδή έχετε χρησιμοποιήσει ρητές επιλογές αλλά όχι δηλωμένες μεταβλητές πριν τις χρησιμοποιήσετε

Βήμα 3) Τώρα για να κατανοήσετε τη σημασία της δήλωσης Option Explicit, αφαιρέστε το σχόλιο της γραμμής 5 στον παραπάνω κώδικα

Βήμα 4) Αποθηκεύστε το αρχείο variables.html και ανανεώστε το πρόγραμμα περιήγησής σας. Τώρα, η έξοδος σας θα είναι ως εξής:

Χαλαρό δέσιμο

Σημείωση – Για να συνδέσετε δύο συμβολοσειρές, πρέπει να χρησιμοποιήσετε το "&". Στο παραπάνω παράδειγμα, χρησιμοποιείται η εντολή inside document.write. Είναι προφανές ότι ο υπολογισμός των συνολικών βαθμών είναι λάθος. Τώρα απλώς προσθέστε την πρώτη δήλωση Option Explicit στην αρχή του κώδικα VBScript (χωρίς τη δήλωση Dim).

Αποθηκεύστε το αρχείο και δείτε την έξοδο. Δεν θα λάβετε τίποτα ως έξοδο που υποδεικνύει ότι ο κώδικάς σας έχει κάποιο σφάλμα. Εδώ το σφάλμα είναι ότι δεν έχετε δηλώσει μεταβλητές πριν τη χρησιμοποιήσετε, ακόμη και αφού καθορίσετε τη δήλωση Option Explicit.

Μπορείτε επίσης να δηλώσετε μεταβλητές χρησιμοποιώντας δημόσιες και ιδιωτικές λέξεις-κλειδιά όπως δημόσιος μαθητής ή ιδιωτικός μαθητής. Ωστόσο, πρέπει να είστε πιο προσεκτικοί όταν χρησιμοποιείτε αυτές τις δύο λέξεις-κλειδιά για τη δήλωση μεταβλητών, επειδή θα αλλάξει το εύρος των μεταβλητών σας.

Μπορείτε επίσης να αποθηκεύσετε πολλές τιμές σε μια μεμονωμένη μεταβλητή και τέτοιες μεταβλητές είναι γνωστές ως Συστοιχία VBScript μεταβλητές. Ας υποθέσουμε ότι θέλετε να αποθηκεύσετε στοιχεία όπως όνομα, σημάδια, διεύθυνση κ.λπ. 30 μαθητών. Θα είναι πραγματικά δύσκολο να δημιουργήσετε και να διαχειριστείτε σύνολα 30 μεταβλητών για ονόματα, σήματα, διευθύνσεις και ούτω καθεξής.

Αντίθετα, μπορείτε να δηλώσετε μια μεμονωμένη μεταβλητή με το όνομα Students και να αποθηκεύσετε τα ονόματα και των 30 μαθητών σε αυτήν τη μεταβλητή. Σε αυτή την περίπτωση, θα δηλώσετε τη μεταβλητή ως Dim Student(29) (ο δείκτης του πίνακα ξεκινά από το μηδέν) και θα εκχωρήσετε τιμές ως

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

Ομοίως, μπορείτε να δημιουργήσετε μεταβλητές όπως σημάδια, διεύθυνση κ.λπ. για να αποθηκεύσετε τις αντίστοιχες τιμές και των 30 μαθητών. Μπορείτε επίσης να δημιουργήσετε πολυδιάστατους πίνακες με έως και 60 διαστάσεις.

Παράδειγμα κώδικα:

Ανοίξτε το πρόγραμμα επεξεργασίας κειμένου και προσθέστε τις ακόλουθες γραμμές κώδικα.

<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>

Εδώ, έχουμε αποθηκεύσει στοιχεία μόνο τριών μαθητών. Μπορείτε να προσθέσετε λεπτομέρειες για έως και 20 μαθητές, καθώς έχουμε ορίσει το μέγεθος του πίνακα ως 20 (καθώς το ευρετήριο ξεκινά από το 0).

Τύποι δεδομένων VBScript

Στην προηγούμενη ενότητα, ίσως έχετε παρατηρήσει ότι έχουμε εκχωρήσει διαφορετικούς τύπους δεδομένων στις μεταβλητές. Έχουμε αποθηκεύσει αριθμούς (μάρκα και μισθός), συμβολοσειρές (όνομα) κ.λπ. σε διαφορετικές μεταβλητές.

Αυτοί οι αριθμοί, οι συμβολοσειρές κλπ είναι γνωστοί ως τύπους δεδομένων. Στην πραγματικότητα, το VBScript έχει μόνο έναν τύπο δεδομένων που ονομάζεται Variant. Μια παραλλαγή είναι ένα ειδικό είδος τύπου δεδομένων που μπορεί να περιέχει διαφορετικά είδη πληροφοριών.

Εάν χρησιμοποιείτε το Variant σε ένα αριθμητικό περιβάλλον, συμπεριφέρεται σαν αριθμός και όταν το χρησιμοποιείτε σε ένα πλαίσιο συμβολοσειράς, συμπεριφέρεται ως συμβολοσειρά.

Με άλλα λόγια, όταν καθορίζετε μισθός=10000, το VBScript υποθέτει ότι ο μισθός είναι ένας τύπος αριθμητικών δεδομένων. Μια παραλλαγή κάνει συγκεκριμένες διακρίσεις σχετικά με τη φύση των δεδομένων. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε τον τύπο παραλλαγής για να αποθηκεύσετε τιμές Boole, νόμισμα, ημερομηνία και ούτω καθεξής.

Αυτές οι διαφορετικές κατηγορίες πληροφοριών που μπορούν να περιέχονται σε μια Παραλλαγή ονομάζονται υποτύποι. Αν και τις περισσότερες φορές, το Variant συμπεριφέρεται με τέτοιο τρόπο που είναι πιο κατάλληλος για τα δεδομένα που περιέχει, θα πρέπει να γνωρίζετε διαφορετικούς υποτύπους.

Ακολουθεί η λίστα των τύπων δεδομένων VBScript.

  • Empty: Ένας ειδικός δευτερεύων τύπος που αναπαριστά μια μεταβλητή στην οποία δεν έχει εκχωρηθεί καμία τιμή ακόμη.
  • Null: Ένας ειδικός υποτύπος για την αναπαράσταση μιας μεταβλητής που έχει εκχωρηθεί με μηδενική τιμή.
  • Ακέραιος: Χρήση 2 byte για την έκφραση υπογεγραμμένου ακέραιου αριθμού στο εύρος -32,768 έως 32,767.
  • Long: Χρήση 4 byte για την έκφραση προσημειωμένων ακεραίων που κυμαίνονται από -2,147,483,648 έως 2,147,483,647.
  • Single: Χρήση 4 byte για την έκφραση πραγματικών αριθμών σε μορφή κινητής υποδιαστολής που κυμαίνονται από -3.402823e38 έως -1.401298e-45 για αρνητικές τιμές και από 1.401298e-45 έως 3.402823e38 για θετική τιμή.
  • Double: Χρησιμοποιώντας 8 byte για την έκφραση πραγματικών αριθμών σε μορφή κινητής υποδιαστολής που κυμαίνονται από -1.79769313486232e308 έως -4.94065645841247e-324 για αρνητικές τιμές και από 4.94065645841247e για 324 .
  • Νόμισμα: Χρήση 8 byte για την έκφραση πραγματικών αριθμών σε δεκαδική μορφή που κυμαίνονται από -922,337,293,685,477.5808 έως 922,337,293,685,477.5807.
  • Ημερομηνία: Χρήση 8 byte για την έκφραση ημερομηνιών που κυμαίνονται από την 1η Ιανουαρίου 100 έως την 31η Δεκεμβρίου 9999.
  • Συμβολοσειρά: Χρήση 1 byte ανά χαρακτήρα για την έκφραση μιας ακολουθίας χαρακτήρων που μπορεί να είναι περίπου 2 δισεκατομμύρια χαρακτήρες.
  • Αντικείμενο: Ένας ειδικός υποτύπος που αναπαριστά μια αναφορά σε ένα αντικείμενο.
  • Σφάλμα: Ένας ειδικός δευτερεύων τύπος που αντιπροσωπεύει έναν αριθμό σφάλματος.
  • Boolean: Χρήση 2 byte για να περιέχει είτε True είτε False.
  • Byte: Χρήση 1 byte για έκφραση ακέραιου αριθμού στην περιοχή από 0 έως 255.

Υπάρχουν δύο ενσωματωμένα Λειτουργίες VBScript που σας βοηθούν να γνωρίζετε τον υποτύπο μιας μεταβλητής: "varType()" και "typeName()".

Ο τύπος var επιστρέφει την αριθμητική αναπαράσταση και η typeName() επιστρέφει την αναπαράσταση κειμένου του υποτύπου της μεταβλητής. Κάθε υποτύπος έχει μια προκαθορισμένη αριθμητική αναπαράσταση.

Παράδειγμα κώδικα

Ανοίξτε το πρόγραμμα επεξεργασίας κειμένου και προσθέστε τις ακόλουθες γραμμές κώδικα.

<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>

Αποθηκεύστε το αρχείο ως subtype.html και ανοίξτε το σε IE. Η έξοδος σας θα μοιάζει με αυτό:

Τύποι δεδομένων VBScript

ΣΗΜΕΙΩΣΗ: Μπορείτε επίσης να δηλώσετε μεταβλητές χρησιμοποιώντας δημόσιο και ιδιωτικός λέξεις-κλειδιά όπως δημόσιος φοιτητής ή ιδιωτικός φοιτητής. Ωστόσο, πρέπει να είστε πιο προσεκτικοί όταν χρησιμοποιείτε αυτές τις δύο λέξεις-κλειδιά για τη δήλωση μεταβλητών, επειδή θα αλλάξει το εύρος των μεταβλητών σας.

Περίληψη

  • Οι μεταβλητές χρησιμοποιούνται για τη διατήρηση της τιμής ή μιας έκφρασης κατά τον προγραμματισμό. Οι μεταβλητές πρέπει να δηλώνονται και να αρχικοποιούνται ξεχωριστά.
  • Αν και μπορείτε να χρησιμοποιήσετε μεταβλητές χωρίς δήλωση, η δήλωση μεταβλητών πριν από τη χρήση τους θεωρείται καλή πρακτική προγραμματισμού.
  • Μια παραλλαγή είναι ο μόνος τύπος δεδομένων του VBScript και η παραλλαγή έχει διαφορετικούς υποτύπους, όπως String, Boolean, Integer, Currency κ.λπ.

Αντιμετώπιση προβλημάτων

Σε περίπτωση που δείτε μια κενή σελίδα μετά την εκτέλεση του κώδικα, κάντε τα εξής

  • Πατήστε F12 για να ανοίξετε τα εργαλεία προγραμματιστή
  • Στην αριστερή γραμμή εργαλείων μετακινηθείτε προς τα κάτω μέχρι να δείτε τη σελίδα ρυθμίσεων "Εξομοίωση".
  • Αλλάξτε τη λειτουργία εγγράφου από προεπιλογή ("Edge") σε 10
  • Προσθέστε τον ακόλουθο κώδικα στην κεφαλή
    <meta http-equiv="x-ua-compatible" content="IE=10">