Các tuyên bố khác của VBScript

VBScript có một số tuyên bố quan trọng khác để giúp các nhà phát triển phát triển một tập lệnh hiệu quả. Bảng sau đây liệt kê một tập hợp các câu lệnh quan trọng như vậy. Trong chương này, chúng ta sẽ thảo luận chi tiết từng câu lệnh này với các ví dụ.

thể loại Tên hàm / Tên câu lệnh
Tùy chọn Tùy chọn rõ ràng
Mã công cụ tập lệnh ScriptEngine
biến thể IsArray, IsEmpty, IsNull, IsNumeric, IsObject, TypeName
Biểu hiện Đánh giá, Thực thi
Tuyên bố kiểm soát Với ... Kết thúc với
Hàm toán học Ngẫu nhiên hóa

Tùy chọn rõ ràng

Option Explicit buộc nhà phát triển khai báo các biến bằng cách sử dụng Dim trước khi chúng được sử dụng trong một số phần của mã.

Cú pháp

Option Explicit

Thí dụ

Nếu chúng ta sử dụng Option Explicit và nếu chúng ta không khai báo các biến thì trình thông dịch sẽ ném và báo lỗi.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Option Explicit
         Dim x,y,z,a
         x = 10
         y = 20
         z = fnadd(x,y)
         a = fnmultiply(x,y)

         Function fnadd(x,y)
            fnadd = x+y
         End Function

      </script>
   </body>
</html>

ScriptEngine

ScriptEngineđại diện cho các chi tiết của ngôn ngữ kịch bản đang sử dụng. Nó cũng được sử dụng kết hợp vớiScriptEngineMajorVersion, ScriptEngineMinor Version, ScriptEngineBuildVersion cung cấp phiên bản chính của công cụ vbscript, phiên bản phụ là công cụ vbscript và phiên bản xây dựng của vbscript tương ứng.

Cú pháp

ScriptEngine

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim scriptdetails
         scriptdetails =  " Version " & ScriptEngine & " - "
         'For getting Major version, use ScriptEngineMajorVersion'
        
         scriptdetails = scriptdetails &  ScriptEngineMajorVersion & "."
        
         'For getting Minor version, use ScriptEngineMinorVersion'
         scriptdetails = scriptdetails & ScriptEngineMinorVersion & "."
        
         'For getting Build version, use ScriptEngineBuildVersion'
         scriptdetails = scriptdetails & ScriptEngineBuildVersion 
        
         Document.write scriptdetails

      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

Version VBScript - 5.8.16996

IsEmpty

Hàm IsEmpty được sử dụng để kiểm tra xem biểu thức có trống hay không. Nó trả về một giá trị Boolean.IsEmptytrả về True nếu biến chưa được khởi tạo hoặc được đặt rõ ràng là Empty. Nếu không, biểu thức trả về False.

Cú pháp

IsEmpty(expression)

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, MyCheck
         MyCheck = IsEmpty(var)  
         Document.write "Line 1 : " & MyCheck & "<br />"
        
         var = Null   ' Assign Null.
         MyCheck = IsEmpty(var) 
         Document.write "Line 2 : " & MyCheck & "<br />"
         
         var = Empty   ' Assign Empty.
         MyCheck = IsEmpty(var)
         Document.write "Line 3 : " & MyCheck & "<br />"
        
      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

Line 1 : True
Line 2 : False
Line 3 : True

IsNull

Hàm IsNull được sử dụng để kiểm tra xem biểu thức có dữ liệu hợp lệ hay không. Nó trả về một giá trị Boolean.IsNull trả về True nếu biến là Null nếu không thì biểu thức trả về False.

Cú pháp

IsNull(expression)

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, res
         res = IsNull(var)
         document.write "Line 1 : " & res & "<br />"
         
         var = Null
         res = IsNull(var)
         document.write "Line 2 : " & res & "<br />"
         
         var = Empty
         res = IsNull(var)
         document.write "Line 3 : " & res & "<br />"

      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

Line 1 : False
Line 2 : True
Line 3 : False

IsObject

Hàm IsObject được sử dụng để kiểm tra xem biểu thức có một Đối tượng hợp lệ hay không. Nó trả về một giá trị Boolean.IsObject trả về True nếu biểu thức chứa một kiểu con đối tượng nếu không biểu thức trả về False.

Cú pháp

IsObject(expression)

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
        Dim fso,b
        b = 10
        set fso = createobject("Scripting.Filesystemobject")
        
        x = isobject(fso)
        Document.write "Line 1 : " &  x  & "<br />" 
        
        y = isobject(b)
        Document.write "Line 2 : " &  y  & "<br />" 

      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

Line 1 : True
Line 2 : False

IsNumeric

Hàm IsNumeric được sử dụng để kiểm tra xem biểu thức có một kiểu con số hay không. Nó trả về một giá trị boolean.IsObject trả về True nếu biểu thức chứa một kiểu con số nếu không biểu thức trả về False.

Cú pháp

IsNumeric(expression)

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, chk
         var = 20
         chk = IsNumeric(var)
         Document.write "Line 1 : " &  chk  & "<br />" 
        
         var = "3.1415935745"   
         chk = IsNumeric(var)   
         Document.write "Line 2 : " &  chk  & "<br / >" 
        
         var = "20 Chapter 23.123 VBScript"   
         chk = IsNumeric(var)
         Document.write "Line 3 : " &  chk  & "<br / >" 

      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

Line 1 : True
Line 2 : True
Line 3 : False

Tên loại

Hàm TypeName được sử dụng để trả về thông tin kiểu con biến thể của biến.

Cú pháp

TypeName(varname)

Hàm Typename có thể trả về bất kỳ giá trị nào sau đây.

  • Byte - Giá trị byte

  • Số nguyên - Giá trị Số nguyên

  • Dài - Giá trị nguyên dài

  • Đơn - Giá trị dấu chấm động chính xác đơn

  • Double - Giá trị dấu phẩy động chính xác kép

  • Tiền tệ - Giá trị tiền tệ

  • Decimal - Giá trị thập phân

  • Ngày - Giá trị ngày hoặc giờ

  • Chuỗi - Giá trị chuỗi ký tự

  • Boolean - Giá trị Boolean

  • Rỗng - Giá trị chưa được khởi tạo

  • Null - Không có dữ liệu hợp lệ

  • Đối tượng - tên kiểu của Đối tượng

  • Không có gì - Biến đối tượng chưa tham chiếu đến một cá thể đối tượng

  • Error

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim ArrVar(2), vartype
         NullVar = Null   ' Assign Null value.

         vartype = TypeName(3.1450)     
         Document.write "Line 1 : " &  vartype  & "<br />" 
         
         vartype = TypeName(432)         
         Document.write "Line 2 : " &  vartype  & "<br />" 
         
         vartype = TypeName("Microsoft")
         Document.write "Line 3 : " &  vartype  & "<br />" 
         
         vartype = TypeName(NullVar)   
         Document.write "Line 4 : " &  vartype  & "< br />" 
         
         vartype = TypeName(ArrVar)    
         Document.write "Line 5 : " &  vartype  & "<br />"

      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

Line 1 : Double
Line 2 : Integer
Line 3 : String
Line 4 : Null
Line 5 : Variant()

Đánh giá

Hàm Eval thực thi một biểu thức và trả về kết quả dưới dạng một chuỗi hoặc một số.

Cú pháp

Eval(expression)

Đối số Biểu thức có thể là một biểu thức chuỗi hoặc một số. Nếu bạn chuyển cho hàm Eval một chuỗi không chứa biểu thức số hoặc tên hàm mà chỉ là một chuỗi văn bản đơn giản, thì sẽ xảy ra lỗi thời gian chạy. Ví dụ: Eval ("VBScript") dẫn đến lỗi.

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Document.write Eval("10 + 10") & "<br />"
         Document.write Eval("101 = 200") & "<br />" 
         Document.write Eval("5 * 3") & "<br />" 

      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

20
false
15

Hành hình

Câu lệnh Execute chấp nhận đối số là một biểu thức chuỗi chứa một hoặc nhiều câu lệnh để thực thi.

Cú pháp

Execute(expression)

Trong VBScript, a = b có thể được hiểu theo hai cách. Nó có thể được coi như một câu lệnh gán trong đó giá trị của x được gán cho y. Nó cũng có thể được hiểu là một biểu thức kiểm tra xem a và b có cùng giá trị hay không. Nếu đúng, kết quả là True; nếu không, kết quả là Sai. Câu lệnh Execute luôn sử dụng cách diễn giải đầu tiên trong khi câu lệnh Eval luôn sử dụng cách diễn giải thứ hai.

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim x
         x = "Global" 
         y = "VBScript"
         Execute("x = y")
         
         msgbox x
         msgbox y
        
      </script>
   </body>
</html>

Lưu tệp với phần mở rộng .html khi thực thi tập lệnh trong IE, kết quả sau được hiển thị trên màn hình.

VBScript
VBScript

Với..End With

Câu lệnh With cho phép chúng ta thực hiện một chuỗi hoạt động trên một đối tượng được chỉ định mà không cần nhắc đến tên đối tượng một cách rõ ràng.

Cú pháp

With (objectname)
   statement 1
   statement 2
   statement 3
   ...
   ...
   statement n
End With

Thí dụ

Khi thực thi đoạn script sau, Winword sẽ được mở và văn bản được chỉ định được nhập vào.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Msg =  "Vbscript" & vbCrLf & "Programming"
         Set objWord = CreateObject("Word.Application")
         objWord.Visible = True
       
         ' Objects methods are accessed without requaliyfying the objects again.'
         With objWord
            .Documents.Add
            .Selection.TypeText Msg
            .Selection.WholeStory
         End With
         
      </script>
   </body>
</html>

Ngẫu nhiên hóa

Câu lệnh Randomize khởi tạo trình tạo số ngẫu nhiên, điều này rất hữu ích cho các nhà phát triển để tạo một số ngẫu nhiên.

Cú pháp

Randomize [number]

Thí dụ

Khi thực thi đoạn script sau, Winword sẽ được mở và văn bản được chỉ định được nhập vào.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim MyValue
         Randomize   
         MyValue = Int((100 * Rnd) + 1)   ' Generate random value between 1 and 100.
         MsgBox MyValue
        
      </script>
   </body>
</html>

Lưu tập lệnh trên dưới dạng HTML và khi thực thi tập lệnh trong IE, kết quả sau được hiển thị.

42