การประกาศตัวแปร VBScript พร้อมประเภทข้อมูล: Dim, String, Boolean

ตัวแปรเป็นพื้นฐานของการเขียนโปรแกรม ตัวแปรใช้ในการเก็บค่าหรือนิพจน์ เมื่อใดก็ตามที่คุณมีข้อมูลที่ต้องใช้งาน คุณจะต้องประกาศตัวแปร

ตัวอย่างเช่น ถ้าคุณต้องเก็บชื่อนักเรียนหรือเงินเดือนของพนักงาน คุณจะต้องใช้ตัวแปรชื่อนักเรียนหรือเงินเดือน

ตัวแปรยังสามารถใช้สำหรับการเก็บนิพจน์ได้ สมมติว่าคุณได้เก็บคะแนนของนักเรียนเป็นภาษาอังกฤษและคณิตศาสตร์โดยใช้ตัวแปร markE และ markM

คุณต้องการหาคะแนนรวม จากนั้น คุณสามารถใช้ตัวแปรชื่อ markT และตั้งค่าเป็น markE + markM กล่าวอีกนัยหนึ่ง markT = markE + markM ที่นี่ markT เป็นตัวแปรที่เก็บนิพจน์

การประกาศตัวแปร

การประกาศตัวแปรจะเหมือนกับการสร้างตัวแปรเนื่องจากคุณกำลังสั่งให้คอมพิวเตอร์จองพื้นที่หน่วยความจำ คุณสามารถตั้งชื่อตัวแปรได้ตามที่คุณต้องการ อาจเป็นชื่อสั้น เช่น x, y หรือ z หรือชื่อที่อธิบายตัวเองได้มากกว่านี้ เช่น นักเรียน ชื่อ เงินเดือน ฯลฯ การให้ชื่อตัวแปรที่ชัดเจนและมีความหมายถือเป็นแนวทางการเขียนโปรแกรมที่ดี

มีกฎบางประการสำหรับชื่อตัวแปร VBScript

  1. ชื่อตัวแปรต้องขึ้นต้นด้วยตัวอักษร ตัวอย่าง: salary, mark เป็นต้น ตัวแปรที่ขึ้นต้นด้วยตัวเลขหรืออักขระพิเศษไม่ได้รับอนุญาต ตัวอย่าง: 1stSchool, 3rdCar, _name เป็นต้น
  2. ชื่อตัวแปรต้องมีความยาวไม่เกิน 255 อักขระ
  3. ชื่อตัวแปรไม่ควรมีจุด (.)

ในการประกาศตัวแปร คุณต้องใช้คีย์เวิร์ด Dim สมมติว่าคุณวางแผนที่จะใช้ตัวแปรชื่อ “เงินเดือน” ในของคุณ โปรแกรมวีบีสคริปต์ไวยากรณ์

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) บันทึกไฟล์ตัวแปร.html และรีเฟรชเบราว์เซอร์ของคุณ ตอนนี้ผลลัพธ์ของคุณจะเป็นดังนี้:

การผูกหลวม

หมายเหตุ – หากต้องการเชื่อมสองสายเข้าด้วยกัน คุณต้องใช้ “&” ในตัวอย่างข้างต้น ใช้คำสั่ง document.write ภายใน เห็นได้ชัดว่าการนับคะแนนรวมผิด ตอนนี้เพียงเพิ่มคำสั่งแรก Option Explicit ที่จุดเริ่มต้นของโค้ด VBScript (โดยไม่มีคำสั่ง Dim)

บันทึกไฟล์และดูผลลัพธ์ คุณจะไม่ได้รับอะไรเลยเป็นผลลัพธ์ซึ่งบ่งชี้ว่ารหัสของคุณมีข้อผิดพลาด ข้อผิดพลาดคือคุณไม่ได้ประกาศตัวแปรก่อนใช้งานแม้ว่าจะระบุคำสั่ง Option Explicit แล้วก็ตาม

คุณยังสามารถประกาศตัวแปรโดยใช้คำสำคัญสาธารณะและส่วนตัว เช่น นักเรียนสาธารณะหรือนักเรียนส่วนตัว แต่คุณต้องระมัดระวังมากขึ้นในขณะที่ใช้คำหลักทั้งสองนี้ในการประกาศตัวแปร เนื่องจากจะทำให้ขอบเขตของตัวแปรของคุณเปลี่ยนไป

คุณยังสามารถเก็บค่าหลายค่าไว้ในตัวแปรตัวเดียวได้ และตัวแปรดังกล่าวเรียกว่า อาร์เรย์ VBScript ตัวแปร สมมติว่าคุณต้องการเก็บรายละเอียด เช่น ชื่อ เกรด ที่อยู่ ฯลฯ ของนักเรียน 30 คน การสร้างและจัดการชุดตัวแปร 30 ตัวสำหรับชื่อ เกรด ที่อยู่ ฯลฯ จะเป็นเรื่องยากมาก

แต่คุณสามารถประกาศตัวแปรตัวเดียวที่ตั้งชื่อนักเรียนและจัดเก็บชื่อของนักเรียนทั้ง 30 คนในตัวแปรนี้ได้ ในกรณีเช่นนี้ คุณจะต้องประกาศตัวแปรเป็น Dim students(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 จะถือว่าเงินเดือนนั้นเป็นประเภทข้อมูลที่เป็นตัวเลข ตัวแปรสร้างความแตกต่างเฉพาะเกี่ยวกับลักษณะของข้อมูล ตัวอย่างเช่น คุณสามารถใช้ประเภทตัวแปรเพื่อจัดเก็บค่าบูลีน สกุลเงิน วันที่ และอื่นๆ

ข้อมูลประเภทต่างๆ เหล่านี้ที่สามารถมีอยู่ใน Variant ได้เรียกว่าประเภทย่อย แม้ว่าโดยส่วนใหญ่แล้ว Variant จะทำงานในลักษณะที่เหมาะสมที่สุดสำหรับข้อมูลที่มีอยู่ แต่คุณควรคำนึงถึงประเภทย่อยที่แตกต่างกัน

ต่อไปนี้เป็นรายการประเภทข้อมูล VBScript

  • ว่างเปล่า: ชนิดย่อยพิเศษเพื่อแสดงตัวแปรที่ยังไม่ได้กำหนดค่าใด ๆ
  • Null: ชนิดย่อยพิเศษเพื่อแสดงตัวแปรที่กำหนดด้วยค่า Null
  • จำนวนเต็ม: การใช้ 2 ไบต์เพื่อแสดงจำนวนเต็มที่ลงนามในช่วง -32,768 ถึง 32,767
  • แบบยาว: การใช้ 4 ไบต์เพื่อแสดงจำนวนเต็มที่มีเครื่องหมายตั้งแต่ -2,147,483,648 ถึง 2,147,483,647
  • ซิงเกิล: ใช้ 4 ไบต์เพื่อแสดงตัวเลขจริงในรูปแบบจุดลอยตัวซึ่งมีช่วงตั้งแต่ -3.402823e38 ถึง -1.401298e-45 สำหรับค่าลบ และตั้งแต่ 1.401298e-45 ถึง 3.402823e38 สำหรับค่าบวก
  • Double:การใช้ 8 ไบต์เพื่อแสดงตัวเลขจริงในรูปแบบจุดลอยตัวตั้งแต่ -1.79769313486232e308 ถึง -4.94065645841247e-324 สำหรับค่าลบ และตั้งแต่ 4.94065645841247e-324 ถึง 1.79769313486232e308 สำหรับค่าบวก
  • สกุลเงิน: ใช้ 8 ไบต์เพื่อแสดงตัวเลขจริงในรูปแบบทศนิยมตั้งแต่ -922,337,293,685,477.5808 ถึง 922,337,293,685,477.5807
  • วันที่: ใช้ 8 ไบต์เพื่อแสดงวันที่ตั้งแต่ 1 มกราคม 100 ถึง 31 ธันวาคม 9999
  • สตริง: ใช้ 1 ไบต์ต่ออักขระเพื่อแสดงลำดับอักขระซึ่งอาจมีได้ประมาณ 2 พันล้านอักขระ
  • วัตถุ: ชนิดย่อยพิเศษเพื่อแสดงการอ้างอิงถึงวัตถุ
  • ข้อผิดพลาด: ชนิดย่อยพิเศษเพื่อแสดงหมายเลขข้อผิดพลาด
  • Boolean: การใช้ 2 ไบต์เพื่อให้มีทั้ง True หรือ False
  • ไบต์: การใช้ 1 ไบต์เพื่อแสดงจำนวนเต็มในช่วง 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 และตัวแปรมีประเภทย่อยที่แตกต่างกัน รวมถึงสตริง บูลีน จำนวนเต็ม สกุลเงิน ฯลฯ

การแก้ไขปัญหา

ในกรณีคุณเห็นหน้าว่างหลังจากรันโค้ด ให้ทำดังต่อไปนี้

  • กด F12 เพื่อเปิดเครื่องมือสำหรับนักพัฒนา
  • ในแถบเครื่องมือด้านซ้ายเลื่อนลงจนกว่าคุณจะเห็นหน้าการตั้งค่า "การจำลอง"
  • เปลี่ยนโหมดเอกสารจากค่าเริ่มต้น (“Edge”) เป็น 10
  • เพิ่มโค้ดต่อไปนี้ลงในส่วนหัว
    <meta http-equiv="x-ua-compatible" content="IE=10">