VBScript - Hướng dẫn nhanh

VBScript là viết tắt của Visual Basic Scripting tạo thành một tập hợp con của Visual Basic for Applications (VBA). VBA là một sản phẩm của Microsoft KHÔNG chỉ được bao gồm trong các sản phẩm khác của Microsoft như MS Project và MS Office mà còn trong các công cụ của Bên thứ ba như AUTO CAD.

Các tính năng của VBScript

  • VBScript là một ngôn ngữ kịch bản nhẹ, có trình thông dịch nhanh như chớp.

  • VBScript, phần lớn, không phân biệt chữ hoa chữ thường. Nó có một cú pháp rất đơn giản, dễ học và dễ thực hiện.

  • Không giống như C ++ hoặc Java, VBScript là một ngôn ngữ kịch bản dựa trên đối tượng và KHÔNG phải là một ngôn ngữ Lập trình hướng đối tượng.

  • Nó sử dụng Mô hình đối tượng thành phần (COM) để truy cập các phần tử của môi trường mà nó đang thực thi.

  • Việc thực thi thành công VBScript chỉ có thể xảy ra nếu nó được thực thi trong Môi trường Máy chủ lưu trữ chẳng hạn như Internet Explorer (IE), Dịch vụ Thông tin Internet (IIS) và Windows Scripting Host (WSH)

VBscript - Lịch sử Phiên bản và Sử dụng

VBScript được Microsoft giới thiệu vào năm 1996 và phiên bản đầu tiên của nó là 1.0. Phiên bản ổn định hiện tại của VBScript là 5.8, có sẵn như một phần của IE8 hoặc Windows 7. Các khu vực sử dụng VBScript là rất nhiều và không bị giới hạn trong danh sách dưới đây.

  • VBScript được sử dụng làm ngôn ngữ kịch bản trong một trong những công cụ kiểm tra Tự động hóa phổ biến - Quick Test Professional viết tắt là QTP

  • Windows Scripting Host, được sử dụng hầu hết bởi các quản trị viên Hệ thống Windows để tự động hóa Windows Desktop.

  • Các trang máy chủ đang hoạt động (ASP), một môi trường kịch bản phía máy chủ để tạo các trang web động sử dụng VBScript hoặc Java Script.

  • VBScript được sử dụng để viết kịch bản phía Máy khách trong Microsoft Internet Explorer.

  • Microsoft Outlook Forms thường chạy trên VBScript; tuy nhiên, lập trình mức ứng dụng dựa vào VBA (Outlook 2000 trở đi).

Nhược điểm

  • VBscript chỉ được sử dụng bởi Trình duyệt IE. Các trình duyệt khác như Chrome, Firefox KHÔNG hỗ trợ VBScript. Do đó, JavaScript được ưu tiên hơn VBScript.

  • VBScript có hỗ trợ dòng lệnh Giới hạn.

  • Vì không có sẵn môi trường phát triển theo mặc định nên việc gỡ lỗi rất khó khăn.

VBScript hôm nay ở đâu?

Phiên bản hiện tại của VBScript là 5.8 và với sự phát triển gần đây của .NET framework, Microsoft đã quyết định cung cấp hỗ trợ trong tương lai của VBScript trong ASP.NET để phát triển web. Do đó, sẽ KHÔNG có thêm bất kỳ phiên bản mới nào của công cụ VBScript nhưng toàn bộ các bản sửa lỗi và các vấn đề bảo mật đang được Giải quyết bởi Nhóm kỹ thuật duy trì của Microsoft. Tuy nhiên, công cụ VBScript sẽ được vận chuyển như một phần của tất cả Microsoft Windows và IIS theo mặc định.

VBScript đầu tiên của bạn

Hãy để chúng tôi viết VBScript để in ra "Hello World".

<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         document.write("Hello World!")
      </script>
   </body>
</html>

Trong ví dụ trên, chúng ta đã gọi hàm document.write , hàm này ghi một chuỗi vào tài liệu HTML. Chức năng này có thể được sử dụng để viết văn bản, HTML hoặc cả hai. Vì vậy, đoạn mã trên sẽ hiển thị kết quả sau:

Hello World!

Khoảng trắng và ngắt dòng

VBScript bỏ qua khoảng trắng, tab và dòng mới xuất hiện trong chương trình VBScript. Người ta có thể sử dụng các khoảng trắng, tab và dòng mới một cách tự do trong chương trình, do đó bạn có thể tự do định dạng và thụt lề chương trình của mình theo cách gọn gàng và nhất quán giúp mã dễ đọc và dễ hiểu.

Định dạng

VBScript dựa trên Visual Basic của Microsoft. Không giống như JavaScript, không có dấu chấm dứt câu lệnh nào như dấu chấm phẩy được sử dụng để kết thúc một câu lệnh cụ thể.

Cú pháp dòng đơn

Dấu hai chấm được sử dụng khi hai hoặc nhiều dòng của VBScript phải được viết trên một dòng. Do đó, trong VBScript, Dấu hai chấm hoạt động như một dấu phân cách dòng.

<script language = "vbscript" type = "text/vbscript">
   var1 = 10 : var2 = 20
</script>

Cú pháp nhiều dòng

Khi một câu lệnh trong VBScript dài dòng và nếu người dùng muốn chia nó thành nhiều dòng, thì người dùng phải sử dụng dấu gạch dưới "_". Điều này cải thiện khả năng đọc của mã. Ví dụ sau minh họa cách làm việc với nhiều dòng.

<script language = "vbscript" type = "text/vbscript">
   var1 = 10 
   var2 = 20
   Sum = var1 + var2  
   document.write("The Sum of two numbers"&_"var1 and var2 is " & Sum)
</script>

Từ dành riêng

Danh sách sau đây hiển thị các từ dành riêng trong VBScript. Những từ dành riêng này KHÔNG NÊN được sử dụng như một hằng số hoặc biến hoặc bất kỳ tên định danh nào khác.

Vòng LSet Tôi
Mod Mới Kế tiếp
không phải Không có gì Vô giá trị
Trên Lựa chọn Không bắt buộc
Hoặc là ParamArray Bảo tồn
Riêng tư Công cộng RaiseEvent
ReDim Rem Sơ yếu lý lịch
RSet Lựa chọn Bộ
Được chia sẻ Độc thân Tĩnh
Dừng lại Phụ Sau đó
Đến Thật Kiểu
Như Boolean
ByRef Byte ByVal
Gọi Trường hợp Lớp học
hăng sô Tiền tệ Gỡ lỗi
Lờ mờ Làm Gấp đôi
Mỗi Khác ElseIf
Trống Kết thúc EndIf
Enum Eqv Biến cố
Lối ra Sai Đối với
Chức năng Được Đi đến
Nếu Imp Triển khai
Trong Số nguyên
Để cho Giống Dài
Loại Cho đến khi Biến thể
Wend Trong khi Với
Xor Đánh giá Hành hình
Msgbox Xóa ExecuteGlobal
Tùy chọn rõ ràng Ngẫu nhiên hóa SendKeys

Phân biệt chữ hoa chữ thường

VBScript là một case-insensitive language. Điều này có nghĩa là các từ khóa ngôn ngữ, biến, tên hàm và bất kỳ số nhận dạng nào khác KHÔNG cần được nhập với cách viết hoa nhất quán của các chữ cái. Vì vậy, các định danh int_counter, INT_Counter và INT_COUNTER có cùng ý nghĩa trong VBScript.

Nhận xét trong VBScript

Các chú thích được sử dụng để ghi lại logic chương trình và thông tin người dùng mà các lập trình viên khác có thể làm việc liền mạch trên cùng một đoạn mã trong tương lai. Nó có thể bao gồm thông tin như được phát triển bởi, được sửa đổi bởi và nó cũng có thể bao gồm logic kết hợp. Các bình luận bị trình thông dịch bỏ qua trong khi thực thi. Nhận xét trong VBScript được biểu thị bằng hai phương pháp.

1. Any statement that starts with a Single Quote (‘) is treated as comment.

Sau đây là ví dụ -

<script language = "vbscript" type = "text/vbscript">
   <!—
      ' This Script is invoked after successful login
      ' Written by : TutorialsPoint
      ' Return Value : True / False
   //- >
</script>

2. Any statement that starts with the keyword “REM”.

Sau đây là ví dụ -

<script language = "vbscript" type = "text/vbscript">
   <!—
      REM This Script is written to Validate the Entered Input
      REM Modified by  : Tutorials point/user2
   //- >
</script>

Không phải tất cả các trình duyệt hiện đại đều hỗ trợ VBScript. VBScript chỉ được hỗ trợ bởi Internet Explorer của Microsoft trong khi các trình duyệt khác (Firefox và Chrome) chỉ hỗ trợ JavaScript. Do đó, các nhà phát triển thường thích JavaScript hơn VBScript.

Mặc dù Internet Explorer (IE) hỗ trợ VBScript, bạn có thể cần phải bật hoặc tắt tính năng này theo cách thủ công. Hướng dẫn này sẽ giúp bạn biết về quy trình bật và tắt hỗ trợ VBScript trong Internet Explorer.

VBScript trong Internet Explorer

Dưới đây là các bước đơn giản để bật hoặc tắt VBScript trong Internet Explorer của bạn -

  • Thực hiện theo Công cụ → Tùy chọn Internet từ menu

  • Chọn tab Bảo mật từ hộp thoại

  • Nhấp vào nút Mức tùy chỉnh

  • Cuộn xuống cho đến khi bạn tìm thấy tùy chọn Scripting

  • Chọn Bật nút radio trong Tập lệnh đang hoạt động

  • Cuối cùng bấm OK và đi ra

Để tắt hỗ trợ VBScript trong Internet Explorer, bạn cần chọn Tắt nút radio bên dướiActive scripting.

Vị trí VBScript trong Tệp HTML

Có một sự linh hoạt được đưa ra để đưa mã VBScript vào bất kỳ đâu trong tài liệu HTML. Nhưng cách ưu tiên nhất để đưa VBScript vào tệp HTML của bạn là như sau:

  • Tập lệnh trong phần <head> ... </head>.

  • Tập lệnh trong phần <body> ... </body>.

  • Tập lệnh trong phần <body> ... </body> và <head> ... </head>.

  • Tập lệnh trong một tệp bên ngoài và sau đó đưa vào phần <head> ... </head>.

Trong phần sau, chúng ta sẽ xem cách chúng ta có thể đặt VBScript theo những cách khác nhau:

VBScript trong phần <head> ... </head>

Nếu bạn muốn tập lệnh chạy trên một số sự kiện, chẳng hạn như khi người dùng nhấp vào một nơi nào đó, thì bạn sẽ đặt tập lệnh đó vào đầu như sau:

<html>
   <head>
      <script type = "text/Vbscript">
         <!--
            Function sayHello() 
               Msgbox("Hello World")
            End Function
         //-->
      </script>
   </head>
   
   <body>
      <input type = "button" onclick = "sayHello()" value = "Say Hello" />
   </body>
</html>

Nó sẽ cho kết quả như sau - Một nút có tên SayHello. Khi nhấp vào nút, hộp thông báo được hiển thị cho người dùng với thông báo "Hello World".

VBScript trong phần <body> ... </body>

Nếu bạn cần một tập lệnh để chạy khi trang tải để tập lệnh tạo nội dung trong trang, thì tập lệnh sẽ nằm trong phần <body> của tài liệu. Trong trường hợp này, bạn sẽ không có bất kỳ hàm nào được xác định bằng VBScript -

<html>
   <head> </head>
   <body>
      <script type = "text/vbscript">
         <!--
            document.write("Hello World")
         //-->
      </script>
      <p>This is web page body </p>
   </body>
</html>

Điều này sẽ tạo ra kết quả sau:

Hello World
This is web page body

VBScript trong phần <body> và <head>

Bạn có thể đặt mã VBScript của mình trong phần <head> và <body> như sau:

<html>
   <head>
      <script type = "text/vbscript">
         <!--
            Function sayHello() 
               msgbox("Hello World")
            End Function
         //-->
      </script>
   </head>
   
   <body>
      <script type = "text/vbscript">
         <!--
         document.write("Hello World")
         //-->
      </script>
      <input type = "button" onclick = "sayHello()" value = "Say Hello" />
   </body>
</html>

Nó sẽ tạo ra kết quả sau - Tin nhắn Hello World với nút 'Say Hello'. Khi nhấp vào nút, một hộp thông báo với thông báo "Hello World" được hiển thị cho người dùng.

Hello World 

VBScript trong tệp bên ngoài

Khi bạn bắt đầu làm việc rộng rãi hơn với VBScript, bạn có thể sẽ thấy rằng có những trường hợp, bạn đang sử dụng lại mã VBScript giống hệt nhau trên nhiều trang của một trang web. Bạn không bị hạn chế duy trì mã giống hệt nhau trong nhiều tệp HTML.

Các kịch bản Thẻ cung cấp một cơ chế để cho phép bạn lưu trữ VBScript trong một tập tin bên ngoài và sau đó đưa nó vào các tập tin HTML của bạn. Dưới đây là một ví dụ cho thấy cách bạn có thể đưa tệp VBScript bên ngoài vào mã HTML của mình bằng cách sử dụng thẻ script và thuộc tính src của nó

<html>
   <head>
      <script type = "text/vbscript" src = "filename.vbs" ></script>
   </head>
   <body>
      .......
   </body>
</html>

Để sử dụng VBScript từ nguồn tệp bên ngoài, bạn cần viết tất cả mã nguồn VBScript của mình trong một tệp văn bản đơn giản có phần mở rộng là ".vbs" và sau đó bao gồm tệp đó như được hiển thị ở trên. Ví dụ: bạn có thể giữ nội dung sau trong tệp filename.vbs và sau đó bạn có thể sử dụng hàm sayHello trong tệp HTML của mình sau khi bao gồm tệp filename.vbs.

Function sayHello()
   Msgbox "Hello World"
End Function

Vị trí VBScript trong QTP

VBScript được đặt trong công cụ QTP (Quick Test Professional) nhưng nó KHÔNG nằm trong các Thẻ HTML. Tệp Script được lưu với phần mở rộng .vbs và nó được thực thi bởi công cụ thực thi Quick Test Professional.

Biến VBScript

Một biến là một vị trí bộ nhớ được đặt tên được sử dụng để giữ một giá trị có thể thay đổi trong quá trình thực thi tập lệnh. VBScript chỉ cóONE kiểu dữ liệu cơ bản, Variant.

Rules for Declaring Variables −

  • Tên biến phải bắt đầu bằng một bảng chữ cái.

  • Tên biến không được vượt quá 255 ký tự.

  • Các biến KHÔNG được chứa dấu chấm (.)

  • Tên biến phải là duy nhất trong ngữ cảnh đã khai báo.

Khai báo các biến

Các biến được khai báo bằng từ khóa "dim". Vì chỉ có MỘT kiểu dữ liệu cơ bản, tất cả các biến được khai báo là biến thể theo mặc định. Do đó, một người dùngNEED NOT đề cập đến loại dữ liệu trong quá trình khai báo.

Example 1 - Trong ví dụ này, IntValue có thể được sử dụng như một chuỗi, số nguyên hoặc thậm chí là mảng.

Dim Var

Example 2 - Hai hoặc nhiều khai báo được phân tách bằng dấu phẩy (,)

Dim Variable1,Variable2

Gán giá trị cho các biến

Các giá trị được gán tương tự như một biểu thức đại số. Tên biến ở phía bên trái, theo sau là ký hiệu bằng (=) và sau đó là giá trị của nó ở phía bên phải.

Quy tắc

  • Các giá trị số phải được khai báo mà không có dấu ngoặc kép.

  • Các giá trị Chuỗi phải được đặt trong dấu ngoặc kép (")

  • Các biến Ngày và Giờ phải được đặt trong ký hiệu băm (#)

Ví dụ

' Below Example, The value 25 is assigned to the variable.
Value1 = 25

' A String Value ‘VBScript’ is assigned to the variable StrValue.
StrValue = “VBScript”

' The date 01/01/2020 is assigned to the variable DToday.
Date1 = #01/01/2020#

' A Specific Time Stamp is assigned to a variable in the below example.
Time1 = #12:30:44 PM#

Phạm vi của các biến

Các biến có thể được khai báo bằng cách sử dụng các câu lệnh sau để xác định phạm vi của biến. Phạm vi của biến đóng một vai trò quan trọng khi được sử dụng trong một thủ tục hoặc các lớp.

  • Dim
  • Public
  • Private

Lờ mờ

Các biến được khai báo bằng từ khóa “Dim” ở mức Thủ tục chỉ khả dụng trong cùng một quy trình. Các biến được khai báo bằng Từ khóa “Dim” ở cấp tập lệnh có sẵn cho tất cả các quy trình trong cùng một tập lệnh.

Example - Trong ví dụ dưới đây, giá trị của Var1 và Var2 được khai báo ở mức script trong khi Var3 được khai báo ở mức thủ tục.

Note- Phạm vi của chương này là tìm hiểu về Biến. Các chức năng sẽ được đề cập chi tiết trong các chương sắp tới.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim Var1
         Dim Var2
         
         Call add()
         Function add()
            Var1 = 10
            Var2 = 15
            Dim Var3
            Var3 = Var1 + Var2
            Msgbox Var3 'Displays 25, the sum of two values.
         End Function

         Msgbox Var1   ' Displays 10 as Var1 is declared at Script level
         Msgbox Var2   ' Displays 15 as Var2 is declared at Script level
         Msgbox Var3   ' Var3 has No Scope outside the procedure. Prints Empty
      </script>
   </body>
</html>

Công cộng

Các biến được khai báo bằng Từ khoá "Công khai" có sẵn cho tất cả các quy trình trên tất cả các tập lệnh được liên kết. Khi khai báo một biến kiểu "public", từ khóa Dim được thay thế bằng "Public".

Example - Trong ví dụ sau, Var1 và Var2 có sẵn ở cấp tập lệnh trong khi Var3 có sẵn trên các tập lệnh và thủ tục liên quan vì nó được khai báo là Công khai.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim Var1
         Dim Var2
         Public Var3

         Call add()

         Function add()
            Var1 = 10
            Var2 = 15
            Var3 = Var1+Var2
            Msgbox Var3 'Displays 25, the sum of two values.
         End Function

         Msgbox Var1   ' Displays 10 as Var1 is declared at Script level
         Msgbox Var2   ' Displays 15 as Var2 is declared at Script level
         Msgbox Var3   ' Displays 25 as Var3 is declared as Public 

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

Riêng tư

Các biến được khai báo là "Riêng tư" chỉ có phạm vi trong tập lệnh mà chúng được khai báo. Khi khai báo một biến kiểu "Riêng tư", từ khóa Dim được thay thế bằng "Riêng tư".

Example- Trong ví dụ sau, Var1 và Var2 có sẵn ở Cấp tập lệnh. Var3 được khai báo là Riêng tư và nó chỉ có sẵn cho tập lệnh cụ thể này. Việc sử dụng các Biến "Riêng tư" rõ ràng hơn trong Lớp.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim Var1
         Dim Var2
         Private Var3

         Call add()
         Function add()
            Var1 = 10
            Var2 = 15
            Var3 = Var1+Var2
            Msgbox Var3 'Displays the sum of two values.
         End Function

         Msgbox Var1   ' Displays 10 as Var1 is declared at Script level
         Msgbox Var2   ' Displays 15 as Var2 is declared at Script level
         Msgbox Var3   ' Displays 25 but Var3 is available only for this script.
      </script>
   </body>
</html>

Hằng số là một vị trí bộ nhớ được đặt tên được sử dụng để giữ một giá trị KHÔNG THỂ thay đổi trong quá trình thực thi tập lệnh. Nếu người dùng cố gắng thay đổi Giá trị không đổi, thì quá trình thực thi Tập lệnh sẽ dẫn đến lỗi. Các hằng được khai báo giống như cách khai báo các biến.

Khai báo hằng số

Cú pháp

[Public | Private] Const Constant_Name = Value

Hằng số có thể thuộc loại Công khai hoặc Riêng tư. Việc sử dụng Công cộng hoặc Riêng tư là Tùy chọn. Hằng số Công khai có sẵn cho tất cả các tập lệnh và thủ tục trong khi Hằng số Riêng có sẵn trong thủ tục hoặc Lớp. Người ta có thể gán bất kỳ giá trị nào như số, Chuỗi hoặc Ngày cho Hằng số đã khai báo.

ví dụ 1

Trong ví dụ này, giá trị của pi là 3,4 và nó hiển thị diện tích của hình tròn trong một hộp thông báo.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim intRadius
         intRadius = 20
         const pi = 3.14
         Area = pi*intRadius*intRadius
         Msgbox Area

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

Ví dụ 2

Ví dụ dưới đây minh họa cách gán Giá trị Chuỗi và Ngày cho một Hằng số.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Const myString = "VBScript"
         Const myDate = #01/01/2050#
         Msgbox myString
         Msgbox myDate

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

Ví dụ 3

Trong ví dụ dưới đây, người dùng cố gắng thay đổi Giá trị không đổi; do đó, nó sẽ kết thúc với mộtExecution Error.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim intRadius
         intRadius = 20
         const pi = 3.14
         pi = pi*pi	'pi VALUE CANNOT BE CHANGED.THROWS ERROR'
         Area = pi*intRadius*intRadius
         Msgbox Area
         
      </script>
   </body>
</html>

Toán tử là gì?

Hãy lấy một biểu thức 4 + 5 bằng 9 . Ở đây, 4 và 5 được gọi làoperands và + được gọi là operator. Ngôn ngữ VBScript hỗ trợ các loại toán tử sau:

  • Toán tử số học
  • Toán tử so sánh
  • Toán tử logic (hoặc quan hệ)
  • Toán tử ghép nối

Các toán tử số học

VBScript hỗ trợ các toán tử số học sau:

Giả sử biến A giữ 5 và biến B giữ 10, thì -

Hiển thị các ví dụ

Nhà điều hành Sự miêu tả Thí dụ
+ Thêm hai toán hạng A + B sẽ cho 15
- Trừ toán hạng thứ hai với toán hạng đầu tiên A - B sẽ cho -5
* Nhân cả hai toán hạng A * B sẽ cho 50
/ Chia tử số cho tử số B / A sẽ cho 2
% Toán tử mô đun và phần còn lại của sau một phép chia số nguyên B MOD A sẽ cho 0
^ Toán tử lũy thừa B ^ A sẽ cho 100000

Để hiểu các toán tử này một cách tốt hơn, bạn có thể Tự mình thử .

Các toán tử so sánh

Có các toán tử so sánh sau được hỗ trợ bởi ngôn ngữ VBScript:

Giả sử biến A giữ 10 và biến B giữ 20, thì -

Hiển thị các ví dụ

Nhà điều hành Sự miêu tả Thí dụ
= Kiểm tra xem giá trị của hai toán hạng có bằng nhau hay không, nếu có thì điều kiện trở thành true. (A == B) là Sai.
<> Kiểm tra xem giá trị của hai toán hạng có bằng nhau hay không, nếu các giá trị không bằng nhau thì điều kiện trở thành true. (A <> B) là True.
> Kiểm tra xem giá trị của toán hạng bên trái có lớn hơn giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true. (A> B) là Sai.
< Kiểm tra xem giá trị của toán hạng bên trái có nhỏ hơn giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true. (A <B) là True.
> = Kiểm tra xem giá trị của toán hạng bên trái có lớn hơn hoặc bằng giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true. (A> = B) là Sai.
<= Kiểm tra xem giá trị của toán hạng bên trái có nhỏ hơn hoặc bằng giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true. (A <= B) là True.

Để hiểu các toán tử này một cách tốt hơn, bạn có thể Tự mình thử .

Các toán tử logic

Có các toán tử logic sau được hỗ trợ bởi ngôn ngữ VBScript:

Giả sử biến A giữ 10 và biến B giữ 0, sau đó -

Hiển thị các ví dụ

Nhà điều hành Sự miêu tả Thí dụ
Được gọi là toán tử logic AND. Nếu cả hai điều kiện đều Đúng, thì Biểu thức trở thành Đúng. a <> 0 VÀ b <> 0 là Sai.
HOẶC LÀ Được gọi là Toán tử logic HOẶC. Nếu bất kỳ điều kiện nào trong hai điều kiện là Đúng, thì điều kiện trở thành Đúng. a <> 0 HOẶC b <> 0 là đúng.
KHÔNG PHẢI Được gọi là Toán tử logic NOT. Nó đảo ngược trạng thái logic của toán hạng của nó. Nếu một điều kiện là Đúng, thì toán tử logic NOT sẽ làm cho điều kiện đó là Sai. NOT (a <> 0 OR b <> 0) là false.
XOR Được gọi là Loại trừ logic. Nó là sự kết hợp của Toán tử NOT và OR. Nếu một và chỉ một biểu thức được đánh giá là True, thì kết quả là True. (a <> 0 XOR b <> 0) là true.

Để hiểu các toán tử này một cách tốt hơn, bạn có thể Tự mình thử .

Các toán tử kết hợp

Có các toán tử Nối sau được ngôn ngữ VBScript hỗ trợ:

Giả sử biến A giữ 5 và biến B giữ 10 thì -

Hiển thị các ví dụ

Nhà điều hành Sự miêu tả Thí dụ
+ Thêm hai Giá trị làm Giá trị thay đổi là Số A + B sẽ cho 15
& Kết hợp hai giá trị A & B sẽ cho 510

Giả sử biến A = "Microsoft" và biến B = "VBScript", sau đó -

Nhà điều hành Sự miêu tả Thí dụ
+ Kết hợp hai giá trị A + B sẽ cung cấp cho MicrosoftVBScript
& Kết hợp hai giá trị A & B sẽ cung cấp cho MicrosoftVBScript

Note- Các toán tử nối có thể được sử dụng cho các số và chuỗi. Đầu ra phụ thuộc vào ngữ cảnh nếu các biến giữ giá trị số hoặc Giá trị chuỗi.

Để hiểu các Toán tử này một cách tốt hơn, bạn có thể Tự mình thử .

Việc ra quyết định cho phép người lập trình kiểm soát luồng thực thi của một tập lệnh hoặc một trong các phần của nó. Việc thực thi được điều chỉnh bởi một hoặc nhiều câu lệnh điều kiện.

Sau đây là dạng chung của cấu trúc ra quyết định điển hình được tìm thấy trong hầu hết các ngôn ngữ lập trình:

VBScript cung cấp các loại tuyên bố ra quyết định sau.

Tuyên bố Sự miêu tả
câu lệnh if An if câu lệnh bao gồm một biểu thức Boolean theo sau là một hoặc nhiều câu lệnh.
if..else statement An if elsecâu lệnh bao gồm một biểu thức Boolean theo sau là một hoặc nhiều câu lệnh. Nếu điều kiện là Đúng, các câu lệnh trongIfcác câu lệnh được thực thi. Nếu điều kiện sai, thìElse một phần của tập lệnh được thực thi
if ... elseif..else statement An if câu lệnh được theo sau bởi một hoặc nhiều ElseIf Các câu lệnh, bao gồm các biểu thức Boolean và sau đó là một câu lệnh else tùy chọn, thực thi khi tất cả điều kiện trở thành sai.
câu lệnh if lồng nhau An if hoặc là elseif tuyên bố bên trong khác if hoặc là elseif các câu lệnh).
chuyển đổi tuyên bố A switch câu lệnh cho phép một biến được kiểm tra tính bình đẳng với một danh sách các giá trị.

Có thể có một tình huống khi bạn cần thực thi một khối mã nhiều lần. Nói chung, các câu lệnh được thực hiện tuần tự: Câu lệnh đầu tiên trong một hàm được thực hiện đầu tiên, tiếp theo là câu lệnh thứ hai, v.v.

Các ngôn ngữ lập trình cung cấp các cấu trúc điều khiển khác nhau cho phép các đường dẫn thực thi phức tạp hơn. Một câu lệnh lặp cho phép chúng ta thực hiện một câu lệnh hoặc một nhóm câu lệnh nhiều lần và sau đây là tổng quát từ một câu lệnh lặp trong VBScript.

VBScript cung cấp các loại vòng lặp sau để xử lý các yêu cầu về vòng lặp. Nhấp vào các liên kết sau để kiểm tra chi tiết của chúng.

Loại vòng lặp Sự miêu tả
vòng lặp for Thực thi một chuỗi các câu lệnh nhiều lần và viết tắt mã quản lý biến vòng lặp.
vòng lặp cho ..each Nó được thực thi nếu có ít nhất một phần tử trong nhóm và được nhắc lại cho mỗi phần tử trong một nhóm.
vòng lặp while..wend Nó kiểm tra điều kiện trước khi thực thi phần thân của vòng lặp.
làm .. vòng lặp trong khi Các câu lệnh do..While sẽ được thực hiện miễn là điều kiện là Đúng. (Tức là,) Vòng lặp sẽ được lặp lại cho đến khi điều kiện là Sai.
làm .. cho đến khi lặp lại Các câu lệnh do..Until sẽ được thực hiện miễn là điều kiện là Sai. (Tức là,) Vòng lặp sẽ được lặp lại cho đến khi điều kiện là Đúng.

Tuyên bố kiểm soát vòng lặp

Các câu lệnh điều khiển vòng lặp thay đổi việc thực thi từ trình tự bình thường của nó. Khi việc thực thi rời khỏi một phạm vi, tất cả các câu lệnh còn lại trong vòng lặp KHÔNG được thực thi.

VBScript hỗ trợ các câu lệnh điều khiển sau. Nhấp vào các liên kết sau để kiểm tra chi tiết của chúng.

Tuyên bố kiểm soát Sự miêu tả
Exit For statement Chấm dứt For loop câu lệnh và chuyển việc thực thi câu lệnh ngay sau vòng lặp
Câu lệnh Exit Do Chấm dứt Do While câu lệnh và chuyển việc thực thi câu lệnh ngay sau vòng lặp

Sự kiện là gì?

Tương tác của VBScript với HTML được xử lý thông qua các sự kiện xảy ra khi người dùng hoặc trình duyệt thao tác một trang. Khi trang tải, đó là một sự kiện. Khi người dùng nhấp vào một nút, lần nhấp đó cũng là một sự kiện. Các ví dụ khác về sự kiện bao gồm nhấn phím bất kỳ, đóng cửa sổ, thay đổi kích thước cửa sổ, v.v. Nhà phát triển có thể sử dụng các sự kiện này để thực hiện các phản hồi được mã hóa VBScript, khiến các nút đóng cửa sổ, thông báo được hiển thị cho người dùng, dữ liệu được xác thực và hầu như bất kỳ loại phản ứng khác có thể xảy ra.

Sự kiện là một phần của Mô hình đối tượng tài liệu (DOM) và mỗi phần tử HTML đều có một tập hợp sự kiện nhất định, có thể kích hoạt Mã VBScript. Vui lòng xem qua hướng dẫn nhỏ này để hiểu rõ hơn về Tham chiếu sự kiện HTML . Ở đây, chúng ta sẽ thấy một số ví dụ để hiểu mối quan hệ giữa Event và VBScript.

Loại sự kiện onclick

Đây là loại sự kiện được sử dụng thường xuyên nhất, xảy ra khi người dùng nhấp vào nút trái của chuột. Bạn có thể đặt xác nhận, cảnh báo, v.v. của mình đối với loại sự kiện này.

Thí dụ

<html>
   <head>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello() 
            msgbox "Hello World"
         End Function
      </script>
   </head>
   
   <body>
      <input type = "button" onclick = "sayHello()" value = "Say Hello"/>
   </body>
</html>

Nó sẽ tạo ra kết quả sau và khi bạn nhấp vào nút Xin chào, sự kiện onclick sẽ xảy ra sẽ kích hoạt hàm sayHello ().

gửi loại sự kiện

Một loại sự kiện quan trọng nhất là onsubmit . Sự kiện này xảy ra khi bạn cố gắng gửi một biểu mẫu. Vì vậy, bạn có thể đặt xác thực biểu mẫu của mình đối với loại sự kiện này. Biểu mẫu được gửi bằng cách nhấp vào nút Gửi, hộp thông báo xuất hiện.

Biểu mẫu được gửi bằng cách nhấp vào nút Gửi, hộp thông báo xuất hiện.

Thí dụ

<html>
   <head> </head>
   <body>
      <script language = "VBScript">       
         Function fnSubmit()
            Msgbox("Hello Tutorialspoint.Com")
         End Function       
      </script>
      
      <form action = "/cgi-bin/test.cgi" method = "post" name = "form1" onSubmit = "fnSubmit()">
         <input name = "txt1" type = "text"><br>
         <input name = "btnButton1" type = "submit" value="Submit">
      </form>
   </body>
</html>

onmouseover và onmouseout

Hai loại sự kiện này sẽ giúp bạn tạo hiệu ứng đẹp mắt với hình ảnh hoặc thậm chí cả văn bản. Sự kiện onmouseover xảy ra khi bạn đưa chuột qua bất kỳ phần tử nào và sự kiện onmouseout xảy ra khi bạn đưa chuột ra khỏi phần tử đó.

Thí dụ

<html>
   <head> </head>
   <body>
      <script language = "VBScript">       
         Function AlertMsg
            Msgbox("ALERT !")
         End Function
          
         Function onmourse_over()
            Msgbox("Onmouse Over")
         End Function

         Sub txt2_OnMouseOut()
            Msgbox("Onmouse Out !!!")
         End Sub
          
         Sub btnButton_OnMouseOut()
            Msgbox("onmouse out on Button !")
         End Sub
      </script>
      
      <form action = "page.cgi" method = "post" name = "form1">
         <input name = "txt1" type = "text" OnMouseOut = "AlertMsg()"><br>
         <input name = "txt2" type = "text" OnMouseOver = "onmourse_over()">
         <br><input name = "btnButton" type = "button" value = "Submit">
      </form>
   </body>
</html>

Nó sẽ tạo ra một kết quả khi bạn di chuột qua hộp văn bản và cả khi bạn di chuyển tiêu điểm ra khỏi hộp văn bản và nút.

Sự kiện chuẩn HTML 4

Các sự kiện HTML 4 tiêu chuẩn được liệt kê ở đây để bạn tham khảo. Ở đây, script chỉ ra một hàm VBScript sẽ được thực thi đối với sự kiện đó.

Biến cố Giá trị Sự miêu tả
sự thay đổi kịch bản Tập lệnh chạy khi phần tử thay đổi
gửi đi kịch bản Tập lệnh chạy khi biểu mẫu được gửi
onreset kịch bản Tập lệnh chạy khi biểu mẫu được đặt lại
onblur kịch bản Tập lệnh chạy khi phần tử mất tiêu điểm
vào trọng tâm kịch bản Tập lệnh chạy khi phần tử được lấy nét
onkeydown kịch bản Tập lệnh chạy khi nhấn phím
onkeypress kịch bản Tập lệnh chạy khi phím được nhấn và thả
onkeyup kịch bản Tập lệnh chạy khi khóa được phát hành
trong một cái nhấp chuột kịch bản Tập lệnh chạy khi nhấp chuột
ondblclick kịch bản Tập lệnh chạy khi nhấp đúp chuột
onmousedown kịch bản Script chạy khi nhấn nút chuột
onmousemove kịch bản Tập lệnh chạy khi con trỏ chuột di chuyển
onmouseout kịch bản Tập lệnh chạy khi con trỏ chuột di chuyển ra khỏi một phần tử
onmouseover kịch bản Tập lệnh chạy khi con trỏ chuột di chuyển qua một phần tử
onmouseup kịch bản Tập lệnh chạy khi thả nút chuột

Cookies là gì?

Trình duyệt Web và Máy chủ sử dụng giao thức HTTP để giao tiếp và HTTP là một giao thức không trạng thái. Nhưng đối với một trang web thương mại, bắt buộc phải duy trì thông tin phiên giữa các trang khác nhau. Ví dụ: một đăng ký người dùng kết thúc sau khi hoàn thành nhiều trang. Nhưng làm thế nào để duy trì thông tin phiên của người dùng trên tất cả các trang web. Trong nhiều trường hợp, sử dụng cookie là phương pháp hiệu quả nhất để ghi nhớ và theo dõi các sở thích, mua hàng, hoa hồng và các thông tin khác cần thiết để có trải nghiệm khách truy cập hoặc thống kê trang web tốt hơn.

Làm thế nào nó hoạt động?

Máy chủ của bạn gửi một số dữ liệu đến trình duyệt của khách truy cập dưới dạng cookie. Trình duyệt có thể chấp nhận cookie. Nếu có, nó được lưu trữ dưới dạng bản ghi văn bản thuần túy trên ổ cứng của khách truy cập. Bây giờ, khi khách truy cập đến một trang khác trên trang web của bạn, trình duyệt sẽ gửi cùng một cookie đến máy chủ để truy xuất. Sau khi được truy xuất, máy chủ của bạn biết / nhớ những gì đã được lưu trữ trước đó. Cookie là một bản ghi dữ liệu văn bản thuần túy gồm 5 trường có độ dài thay đổi -

  • Expires- Ngày cookie sẽ hết hạn. Nếu ô này trống, cookie sẽ hết hạn khi khách truy cập thoát khỏi trình duyệt.

  • Domain - Tên miền của trang web của bạn.

  • Path- Đường dẫn đến thư mục hoặc trang web đặt cookie. Phần này có thể để trống nếu bạn muốn lấy cookie từ bất kỳ thư mục hoặc trang nào.

  • Secure- Nếu trường này chứa từ "an toàn", thì cookie chỉ có thể được truy xuất bằng máy chủ bảo mật. Nếu trường này trống, không có hạn chế như vậy tồn tại.

  • Name=Value - Cookie được thiết lập và truy xuất dưới dạng các cặp khóa và giá trị.

Cookie ban đầu được thiết kế để lập trình CGI và dữ liệu của cookie được truyền tự động giữa trình duyệt web và máy chủ web, vì vậy các tập lệnh CGI trên máy chủ có thể đọc và ghi các giá trị cookie được lưu trữ trên máy khách.

VBScript cũng có thể thao tác cookie bằng cách sử dụng thuộc tính cookie của đối tượng Document . VBScript có thể đọc, tạo, sửa đổi và xóa cookie hoặc cookie áp dụng cho trang web hiện tại.

Lưu trữ Cookie

Cách đơn giản nhất để tạo cookie là gán một giá trị chuỗi cho đối tượng document.cookie , trông giống như sau:

Cú pháp

document.cookie = "key1 = value1;key2 = value2;expires = date"

Ở đây thuộc tính hết hạn là tùy chọn. Nếu bạn cung cấp thuộc tính này với ngày hoặc giờ hợp lệ, thì cookie sẽ hết hạn vào ngày hoặc giờ nhất định và sau đó giá trị của cookie sẽ không thể truy cập được.

Thí dụ

Sau đây là ví dụ để đặt tên khách hàng trong cookie đầu vào .

<html>
   <head>
      <script type = "text/vbscript">
         Function WriteCookie
            If document.myform.customer.value = "" Then
               msgbox "Enter some value!"
            Else
               cookievalue = (document.myform.customer.value)
               document.cookie = "name = " + cookievalue
               msgbox "Setting Cookies : " & "name = " & cookievalue
            End If
         End Function
      </script>
   </head>
   
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>
   </body>
</html>

Nó sẽ tạo ra kết quả sau. Bây giờ hãy nhập một cái gì đó vào hộp văn bản và nhấn nút "Đặt Cookie" để đặt cookie.

Now, your system has a cookie called name. You can set multiple cookies using multiple key = value pairs separated by comma. You will learn how to read this cookie in next section.

Reading Cookies

Reading a cookie is just as simple as writing one, because the value of the document.cookie object is the cookie. So, you can use this string whenever you want to access the cookie. The document.cookie string will keep a list of name = value pairs separated by semicolons where name is the name of a cookie and value is its string value. You can use strings' split() function to break the string into key and values as follows −

Example

Following is the example to get the cookies set in the previous section −

<html>
   <head>
      <script type = "text/vbscript">
         Function ReadCookie
            allcookies = document.cookie
            msgbox "All Cookies : " + allcookies
            cookiearray = split(allcookies,";")
            
            For i = 0 to ubound(cookiearray)
               Name  = Split(cookiearray(i),"=")
               Msgbox "Key is : " + Name(0) + " and Value is : " + Name(1)
            Next
         End Function
      </script>
   </head>
   
   <body>
      <form name = "myform" action = "">
         <input type = "button" value = "Get Cookie" onclick = "ReadCookie()"/>
      </form>
   </body>
</html>

Note − Here, UBound is a method of Array class, which returns the length of an array. We will discuss Arrays in a separate chapter; until that time, please try to digest it.

It will produce the following result. Now, press the button "Get Cookie" to see the cookies, which you have set in previous section.

Note − There may be some other cookies already set on your machine. So, above code will show you all the cookies set at your machine.

Setting the Cookies Expiration Date

You can extend the life of a cookie beyond the current browser session by setting an expiration date and saving the expiration date within the cookie. This can be done by setting the expires attribute to a date and time.

Example

The following example illustrates how to set cookie expiration date after 1 Month −

<html>
   <head>
      <script type = "text/vbscript">
         Function WriteCookie()
            x = now()
            y = dateadd("m",1,now())  ' Making it to expire next 
            cookievalue = document.myform.customer.value
            document.cookie = "name = "  & cookievalue
            document.cookie = "expires = " & y
            msgbox("Setting Cookies : " & "name=" & cookievalue )
         End Function
      </script>
   </head>
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>
   </body>
</html>

Deleting a Cookie

Sometimes, you will want to delete a cookie so that subsequent attempts to read the cookie return nothing. To do this, you just need to set the expiration date to a time in the past.

Example

The following example illustrates how to delete a cookie by setting its expiration date 1 Month in the past −

<html>
   <head>
      <script type = "text/vbscript">
         Function WriteCookie()
            x = now()
            x = now()
            a = Month(x)-1
            b = day(x)
            c = year(x)
            d = DateSerial(c,a,b)
            e = hour(x) 
            
            msgbox e
            f = minute(x)
            
            msgbox f
            d = cdate(d & " " & e & ":" & f)
            
            msgbox d
            cookievalue = document.myform.customer.value
            document.cookie = "name = "  & cookievalue
            document.cookie = "expires = " & d
            msgbox("Setting Cookies : " & "name=" & cookievalue )
         End Function
      </script>
   </head>
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>
   </body>
</html>

Number functions help the developers to handle numbers in an efficient way and also helps them to convert their subtypes. It also helps them to make use of the inbuilt mathematical functions associated with VBScript.

Number Conversion Functions

Number functions help us to convert a given number from one data subtype to another data subtype.

Show Examples

Sr.No Function & Description
1

CDbl

A Function, which converts a given number of any variant subtype to double

2

CInt

A Function, which converts a given number of any variant subtype to Integer

3

CLng

A Function, which converts a given number of any variant subtype to Long

4

CSng

A Function, which converts a given number of any variant subtype to Single

5

Hex

A Function, which converts a given number of any variant subtype to Hexadecimal

Number Formatting Functions

The Number formatting functions help the developers to express the given number in a format that they wish to.

Show Examples

Sr.No Function & Description
1

FormatNumber

A Function, which would return an expression formatted as a number

2

FormatPercent

A Function, which would return an expression formatted as a percentage

Mathematical Functions

Mathematical Functions help us to evaluate the mathematical and trigonometrical functions of a given input number.

Show Examples

Sr.No Function & Description
1

Int

A Function, which returns the integer part of the given number

2

Fix

A Function, which returns the integer part of the given number

3

Log

A Function, which returns the natural logarithm of the given number. Negative numbers disallowed

4

Oct

A Function, which returns the Octal value of the given percentage

5

Hex

A Function, which returns the Hexadecimal value of the given number

6

Rnd

A Function, which returns a random number between 0 and 1

7

Sgn

A Function, which returns a number corresponding to the sign of the specified number

8

Sqr

A Function, which returns the square root of the given number. Negative numbers disallowed

9

Abs

A Function, which returns the absolute value of the given number

10

Exp

A Function, which returns the value of e raised to the specified number

11

Sin

A Function, which returns sine value of the given number

12

Cos

A Function, which returns cosine value of the given number

13

Tan

A Function, which returns tan value of the given number

Chuỗi là một chuỗi các ký tự, có thể bao gồm các bảng chữ cái hoặc số hoặc các ký tự đặc biệt hoặc tất cả chúng. Một biến được cho là một chuỗi nếu nó được đặt trong dấu ngoặc kép "".

Cú pháp

variablename = "string"

Ví dụ

str1 = "string"   ' Only Alphabets
str2 = "132.45"   ' Only Numbers
str3 = "!@#$;*"   ' Only Special Characters
Str4 = "Asc23@#"  ' Has all the above

Hàm chuỗi

Có các hàm VBScript String được xác định trước, giúp các nhà phát triển làm việc với các chuỗi rất hiệu quả. Dưới đây là các phương thức chuỗi được hỗ trợ trong VBScript. Vui lòng nhấp vào từng phương pháp để biết chi tiết.

Tên chức năng Sự miêu tả
InStr Trả về lần xuất hiện đầu tiên của chuỗi con được chỉ định. Tìm kiếm diễn ra từ trái sang phải.
GuideRev Trả về lần xuất hiện đầu tiên của chuỗi con được chỉ định. Tìm kiếm diễn ra từ phải sang trái.
Chữ hoa Trả về chữ thường của chuỗi được chỉ định.
Ucase Trả về chữ hoa của chuỗi được chỉ định.
Trái Trả về một số ký tự cụ thể từ phía bên trái của chuỗi.
Đúng Trả về một số ký tự cụ thể từ phía Bên phải của chuỗi.
Giữa Trả về một số ký tự cụ thể từ một chuỗi dựa trên các tham số được chỉ định.
Ltrim Trả về một chuỗi sau khi loại bỏ khoảng trắng ở bên trái của chuỗi được chỉ định.
Rtrim Trả về một chuỗi sau khi loại bỏ khoảng trắng ở phía bên phải của chuỗi được chỉ định.
Xén Trả về một giá trị chuỗi sau khi loại bỏ cả dấu cách trống ở đầu và cuối.
Len Trả về độ dài của chuỗi đã cho.
Thay thế Trả về một chuỗi sau khi thay thế một chuỗi bằng một chuỗi khác.
Không gian Điền vào một chuỗi với số khoảng trắng được chỉ định.
StrComp Trả về giá trị số nguyên sau khi so sánh hai chuỗi được chỉ định.
Chuỗi Trả về một chuỗi với một ký tự được chỉ định với số lần được chỉ định.
StrReverse Trả về một chuỗi sau khi đảo ngược chuỗi ký tự của chuỗi đã cho.

Mảng là gì?

Chúng tôi biết rất rõ rằng một biến là một vùng chứa để lưu trữ một giá trị. Đôi khi, các nhà phát triển có thể nắm giữ nhiều giá trị trong một biến duy nhất tại một thời điểm. Khi một chuỗi giá trị được lưu trữ trong một biến duy nhất, thì nó được gọi làarray variable.

Khai báo mảng

Mảng được khai báo giống như cách khai báo biến ngoại trừ việc khai báo biến mảng sử dụng dấu ngoặc đơn. Trong ví dụ sau, kích thước của mảng được đề cập trong dấu ngoặc.

'Method 1 : Using Dim
Dim arr1() 'Without Size

'Method 2 : Mentioning the Size
Dim arr2(5) 'Declared with size of 5

'Method 3 : using 'Array' Parameter
Dim arr3
arr3 = Array("apple","Orange","Grapes")
  • Mặc dù, kích thước Mảng được biểu thị là 5, nó có thể chứa 6 giá trị khi chỉ mục mảng bắt đầu từ ZERO.

  • Chỉ mục mảng không được là âm.

  • Mảng VBScript có thể lưu trữ bất kỳ loại biến nào trong một mảng. Do đó, một mảng có thể lưu trữ một số nguyên, chuỗi hoặc ký tự trong một biến mảng duy nhất.

Gán giá trị cho một mảng

Các giá trị được gán cho mảng bằng cách chỉ định giá trị chỉ số mảng dựa trên từng giá trị được gán. Nó có thể là một chuỗi.

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim arr(5)
         arr(0) = "1"            'Number as String
         arr(1) = "VBScript"     'String
         arr(2) = 100            'Number
         arr(3) = 2.45           'Decimal Number
         arr(4) = #10/07/2013#   'Date
         arr(5) = #12.45 PM#     'Time

         document.write("Value stored in Array index 0 : " & arr(0) & "<br />")
         document.write("Value stored in Array index 1 : " & arr(1) & "<br />")
         document.write("Value stored in Array index 2 : " & arr(2) & "<br />")
         document.write("Value stored in Array index 3 : " & arr(3) & "<br />")
         document.write("Value stored in Array index 4 : " & arr(4) & "<br />")
         document.write("Value stored in Array index 5 : " & arr(5) & "<br />")

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

Khi mã trên được lưu dưới dạng .HTML và được thực thi trong Internet Explorer, nó tạo ra kết quả sau:

Value stored in Array index 0 : 1
Value stored in Array index 1 : VBScript
Value stored in Array index 2 : 100
Value stored in Array index 3 : 2.45
Value stored in Array index 4 : 7/10/2013
Value stored in Array index 5 : 12:45:00 PM

Mảng nhiều thứ nguyên

Mảng không chỉ giới hạn ở một thứ nguyên và có thể có tối đa 60 thứ nguyên. Mảng hai chiều là mảng được sử dụng phổ biến nhất.

Thí dụ

Trong ví dụ sau, một mảng nhiều thứ nguyên được khai báo với 3 hàng và 4 cột.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim arr(2,3)	' Which has 3 rows and 4 columns
         arr(0,0) = "Apple" 
         arr(0,1) = "Orange"
         arr(0,2) = "Grapes"           
         arr(0,3) = "pineapple" 
         
         arr(1,0) = "cucumber"           
         arr(1,1) = "beans"           
         arr(1,2) = "carrot"           
         arr(1,3) = "tomato"    
         
         arr(2,0) = "potato"             
         arr(2,1) = "sandwitch"            
         arr(2,2) = "coffee"             
         arr(2,3) = "nuts"            
                  
         document.write("Value in Array index 0,1 : " &  arr(0,1) & "<br />")
         document.write("Value in Array index 2,2 : " &  arr(2,2) & "<br />")

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

Khi mã trên được lưu dưới dạng .HTML và được thực thi trong Internet Explorer, nó tạo ra kết quả sau:

Value stored in Array index : 0 , 1 : Orange
Value stored in Array index : 2 , 2 : coffee

Tuyên bố Redim

Câu lệnh ReDim được sử dụng để khai báo các biến mảng động và cấp phát hoặc phân bổ lại không gian lưu trữ.

ReDim [Preserve] varname(subscripts) [, varname(subscripts)]
  • Preserve - Một tham số Tùy chọn được sử dụng để bảo toàn dữ liệu trong một mảng hiện có khi bạn thay đổi kích thước của thứ nguyên cuối cùng.

  • varname - Một tham số Bắt buộc, biểu thị Tên của biến, phải tuân theo các quy ước đặt tên biến chuẩn.

  • subscripts - Một tham số Bắt buộc, cho biết kích thước của mảng.

Thí dụ

Trong ví dụ dưới đây, một mảng đã được xác định lại và sau đó giữ nguyên các giá trị khi kích thước hiện có của mảng được thay đổi.

Note - Khi thay đổi kích thước mảng nhỏ hơn ban đầu, dữ liệu trong các phần tử bị loại bỏ sẽ bị mất.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim a()
         i = 0
         redim a(5)
         a(0) = "XYZ"
         a(1) = 41.25
         a(2) = 22
           
         REDIM PRESERVE a(7)
         For i = 3 to 7
         a(i) = i
         Next
           
         'to Fetch the output
         For i = 0 to ubound(a)
            Msgbox a(i)
         Next
      </script>
   </body>
</html>

Khi chúng tôi lưu tập lệnh trên dưới dạng HTML và thực thi nó trong Internet Explorer, nó sẽ tạo ra kết quả sau.

XYZ
41.25
22
3
4
5
6
7

Phương thức mảng

Có nhiều hàm sẵn có khác nhau trong VBScript giúp các nhà phát triển xử lý các mảng một cách hiệu quả. Tất cả các phương thức được sử dụng cùng với mảng được liệt kê bên dưới. Vui lòng nhấp vào tên phương thức để biết chi tiết.

Chức năng Sự miêu tả
LBound Một Hàm, trả về một số nguyên tương ứng với chỉ số con nhỏ nhất của các mảng đã cho.
UBound Một Hàm, trả về một số nguyên tương ứng với chỉ số con Lớn nhất trong các mảng đã cho.
Tách ra Một Hàm, trả về một mảng có chứa một số giá trị được chỉ định. Được phân tách dựa trên Dấu phân cách.
Tham gia Một Hàm, trả về một Chuỗi chứa một số chuỗi con được chỉ định trong một mảng. Đây là một chức năng hoàn toàn ngược lại với Phương pháp tách.
Bộ lọc Một Hàm, trả về một mảng dựa trên 0 chứa một tập hợp con của mảng chuỗi dựa trên tiêu chí lọc cụ thể.
IsArray Một Hàm, trả về một giá trị boolean cho biết biến đầu vào có phải là một mảng hay không.
Xóa Một Hàm, khôi phục bộ nhớ được cấp phát cho các biến mảng.

Chức năng Ngày và Giờ trong VBScript giúp các nhà phát triển chuyển đổi ngày và giờ từ định dạng này sang định dạng khác hoặc thể hiện giá trị ngày hoặc giờ ở định dạng phù hợp với một điều kiện cụ thể.

Hàm ngày

Chức năng Sự miêu tả
Ngày Một Hàm, trả về ngày hệ thống hiện tại
CDate Một hàm, chuyển đổi một đầu vào nhất định thành Ngày
DateAdd Một Hàm, trả về một ngày mà một khoảng thời gian cụ thể đã được thêm vào
DateDiff Một Hàm, trả về sự khác biệt giữa hai khoảng thời gian
DatePart Một Hàm, trả về một phần cụ thể của giá trị ngày đầu vào đã cho
DateSerial Một Hàm, trả về một ngày hợp lệ cho năm, tháng và ngày nhất định
FormatDateTime Một Hàm, định dạng ngày dựa trên các tham số được cung cấp
IsDate Một Hàm, trả về Giá trị Boolean cho dù tham số được cung cấp có phải là ngày hay không
ngày Một Hàm, trả về một số nguyên từ 1 đến 31 đại diện cho ngày của Ngày được chỉ định
tháng Một Hàm, trả về một số nguyên từ 1 đến 12 đại diện cho tháng của Ngày được chỉ định
Năm Một hàm, trả về một số nguyên đại diện cho năm của Ngày được chỉ định
Tên tháng Một Hàm, trả về Tên của tháng cụ thể cho ngày được chỉ định
WeekDay Một Hàm, trả về một số nguyên (1 đến 7) đại diện cho ngày trong tuần cho ngày được chỉ định.
WeekDayName Một Hàm, trả về tên ngày trong tuần cho ngày được chỉ định.

Chức năng thời gian

Chức năng Sự miêu tả
Hiện nay Một Hàm, trả về ngày và giờ hệ thống hiện tại
Giờ Một Hàm, trả về và số nguyên từ 0 đến 23 đại diện cho phần Giờ của thời gian nhất định
Phút Một Hàm, trả về và số nguyên từ 0 đến 59 đại diện cho phần Phút của thời gian nhất định
Thứ hai Một hàm, trả về và số nguyên từ 0 đến 59 đại diện cho phần Giây của thời gian nhất định
Thời gian Một Hàm, trả về thời gian hệ thống hiện tại
Hẹn giờ Một Hàm, trả về số giây và mili giây kể từ 12:00 SA
TimeSerial Một Hàm, trả về thời gian cho đầu vào cụ thể là giờ, phút và giây
Giá trị thời gian Một hàm, chuyển đổi chuỗi đầu vào thành định dạng thời gian

Hàm là gì?

Hàm là một nhóm mã có thể sử dụng lại có thể được gọi ở bất kỳ đâu trong chương trình của bạn. Điều này giúp loại bỏ sự cần thiết phải viết đi viết lại cùng một đoạn mã. Điều này sẽ cho phép người lập trình chia một chương trình lớn thành một số chức năng nhỏ và dễ quản lý. Ngoài các Hàm có sẵn, VBScript cũng cho phép chúng ta viết các hàm do người dùng định nghĩa. Phần này sẽ giải thích cho bạn cách viết các hàm của riêng bạn trong VBScript.

Định nghĩa hàm

Trước khi sử dụng một hàm, chúng ta cần xác định hàm cụ thể đó. Cách phổ biến nhất để xác định một hàm trong VBScript là sử dụng từ khóa Hàm, theo sau là một tên hàm duy nhất và nó có thể có hoặc không có danh sách các tham số và câu lệnh với mộtEnd Function từ khóa cho biết kết thúc của hàm.

Cú pháp cơ bản được hiển thị bên dưới:

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function Functionname(parameter-list)
            statement 1
            statement 2
            statement 3
            .......
            statement n
         End Function

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

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello()
            msgbox("Hello there")
         End Function

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

Gọi một hàm

Để gọi một hàm ở đâu đó sau này trong script, bạn chỉ cần viết tên của hàm đó với Call từ khóa.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello()
            msgbox("Hello there")
         End Function

         Call sayHello()
        
      </script>
   </body>
</html>

Tham số chức năng

Cho đến bây giờ, chúng ta đã thấy hàm không có tham số, nhưng có một cơ sở để truyền các tham số khác nhau trong khi gọi một hàm. Các tham số được truyền này có thể được nắm bắt bên trong hàm và bất kỳ thao tác nào có thể được thực hiện trên các tham số đó. Các hàm được gọi bằng cách sử dụngCall Từ khóa.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello(name, age)
            msgbox( name & " is " & age & " years old.")
         End Function

         Call sayHello("Tutorials point", 7)

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

Trả lại giá trị từ một hàm

Một hàm VBScript có thể có một câu lệnh trả về tùy chọn. Điều này là bắt buộc nếu bạn muốn trả về giá trị từ một hàm. Ví dụ: bạn có thể chuyển hai số trong một hàm và sau đó bạn có thể mong đợi từ hàm trả về phép nhân của chúng trong chương trình gọi của bạn.

NOTE - Một hàm có thể trả về nhiều giá trị cách nhau bằng dấu phẩy dưới dạng một mảng được gán cho chính tên hàm.

Thí dụ

Hàm này nhận hai tham số và nối chúng và trả về kết quả trong chương trình đang gọi. Trong VBScript, các giá trị được trả về từ một hàm sử dụng tên hàm. Trong trường hợp nếu bạn muốn trả về hai hoặc nhiều giá trị, thì tên hàm được trả về với một mảng giá trị. Trong chương trình gọi, kết quả được lưu trữ trong biến kết quả.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function concatenate(first, last)
            Dim full
            full = first & last
            concatenate = full  'Returning the result to the function name itself
         End Function

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

Bây giờ, chúng ta có thể gọi hàm này như sau:

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function concatenate(first, last)
            Dim full
            full = first & last
            concatenate = full  'Returning the result to the function name itself
         End Function
         ' Here is the usage of returning value from  function. 
         dim result
            result = concatenate("Zara", "Ali")
        msgbox(result)
      </script>
   </body>
</html>

Thủ tục phụ

Thủ tục con tương tự như các hàm nhưng có một số khác biệt.

  • Các thủ tục con KHÔNG ĐƯỢC Trả về một giá trị trong khi các hàm có thể trả về một giá trị hoặc không.

  • Các thủ tục con Có thể được gọi mà không có từ khóa gọi.

  • Các thủ tục phụ luôn được đính kèm trong SubEnd Sub các câu lệnh.

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Sub sayHello()
            msgbox("Hello there")
         End Sub

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

Thủ tục gọi điện

Để gọi một Thủ tục ở đâu đó sau này trong tập lệnh, bạn chỉ cần viết tên của thủ tục đó có hoặc không có Call từ khóa.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Sub sayHello()
            msgbox("Hello there")
         End Sub
         sayHello()

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

Các khái niệm nâng cao cho các chức năng

Có rất nhiều điều để tìm hiểu về các hàm VBScript. Chúng ta có thể truyền tham số byvalue hoặc byreference. Vui lòng nhấp vào từng người trong số họ để biết thêm.

  • ByVal- Chuyển các tham số theo giá trị

  • ByRef- Chuyển các tham số theo tham chiếu

Hộp thoại là gì?

VBScript cho phép các nhà phát triển tương tác với người dùng một cách hiệu quả. Nó có thể là một hộp thông báo để hiển thị thông báo cho người dùng hoặc một hộp nhập mà người dùng có thể nhập các giá trị.

Hàm MsgBox VBScript

Hàm MsgBox hiển thị một hộp thông báo và đợi người dùng nhấp vào một nút và sau đó một hành động được thực hiện dựa trên nút được người dùng nhấp vào.

Cú pháp

MsgBox(prompt[,buttons][,title][,helpfile,context])

Mô tả về Thông Số

  • Prompt- Một tham số bắt buộc. Chuỗi được hiển thị dưới dạng thông báo trong hộp thoại. Độ dài tối đa của lời nhắc là khoảng 1024 ký tự. Nếu thông báo kéo dài nhiều hơn một dòng, thì chúng ta có thể phân tách các dòng bằng ký tự xuống dòng (Chr (13)) hoặc ký tự dòng (Chr (10)) giữa mỗi dòng.

  • buttons- Một tham số tùy chọn. Biểu thức số chỉ định loại nút sẽ hiển thị, kiểu biểu tượng để sử dụng, danh tính của nút mặc định và phương thức của hộp thông báo. Nếu để trống, giá trị mặc định cho các nút là 0.

  • Title- Một tham số tùy chọn. Biểu thức chuỗi hiển thị trong thanh tiêu đề của hộp thoại. Nếu tiêu đề được để trống, tên ứng dụng sẽ được đặt trên thanh tiêu đề.

  • helpfile- Một tham số tùy chọn. Biểu thức Chuỗi xác định tệp Trợ giúp sẽ sử dụng để cung cấp trợ giúp theo ngữ cảnh cho hộp thoại.

  • context- Một tham số tùy chọn. Biểu thức số xác định số ngữ cảnh Trợ giúp được tác giả Trợ giúp chỉ định cho chủ đề Trợ giúp thích hợp. Nếu ngữ cảnh được cung cấp, thì hồ sơ trợ giúp cũng phải được cung cấp.

Các Buttons tham số có thể nhận bất kỳ giá trị nào sau đây:

  • 0 vbOKOnly Chỉ hiển thị nút OK.

  • 1 vbOKCancel Hiển thị các nút OK và Cancel.

  • 2 vbAbortRetryIgnore Hiển thị các nút Hủy bỏ, Thử lại và Bỏ qua.

  • 3 vbYesNoCancel Hiển thị các nút Có, Không và Hủy.

  • 4 vbYesNo Hiển thị các nút Có và Không.

  • 5 vbRetryCancel Hiển thị các nút Thử lại và Hủy bỏ.

  • 16 vbCritical Hiển thị biểu tượng Thông báo Quan trọng.

  • 32 vbQuestion Hiển thị biểu tượng Truy vấn Cảnh báo.

  • 48 vbExclamation Hiển thị biểu tượng Thông báo Cảnh báo.

  • 64 vbInformation Hiển thị biểu tượng Thông báo Thông tin.

  • 0 vbDefaultButton1 Nút đầu tiên là mặc định.

  • 256 vbDefaultButton2 Nút thứ hai là mặc định.

  • 512 vbDefaultButton3 Nút thứ ba là mặc định.

  • 768 vbDefaultButton4 Nút thứ tư là mặc định.

  • 0 vbApplicationModal Phương thức ứng dụng. Ứng dụng hiện tại sẽ không hoạt động cho đến khi người dùng trả lời hộp thông báo.

  • 4096 vbSystemModal Hệ thống phương thức. Tất cả các ứng dụng sẽ không hoạt động cho đến khi người dùng trả lời hộp thông báo.

Các giá trị trên được chia hợp lý thành bốn nhóm: Nhóm đầu tiên (0 đến 5) chỉ các nút sẽ được hiển thị trong hộp thông báo. Nhóm thứ hai (16, 32, 48, 64) mô tả sytle của biểu tượng sẽ được hiển thị, nhóm thứ ba (0, 256, 512, 768) cho biết nút nào phải là nút mặc định và nhóm thứ tư (0, 4096 ) xác định phương thức của hộp thông báo.

Giá trị trả lại

Hàm MsgBox có thể trả về một trong các giá trị sau:

  • 1 - vbOK - OK đã được nhấp

  • 2 - vbCancel - Đã nhấp vào Huỷ

  • 3 - vbAbort - Đã nhấp vào Hủy bỏ

  • 4 - vbRetry - Đã nhấp vào thử lại

  • 5 - vbIgnore - Đã nhấp vào bỏ qua

  • 6 - vbYes - Có đã được nhấp

  • 7 - vbNo - Không được nhấp

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         'Message Box with just prompt message
         MsgBox("Welcome")    
           
         'Message Box with title, yes no and cancel Butttons 
         a = MsgBox("Do you like blue color?",3,"Choose options")
         ' Assume that you press No Button	
         document.write("The Value of a is " & a)
         
      </script>
   </body>
</html>

Khi tập lệnh trên được thực thi, hộp thông báo sẽ được hiển thị và nếu bạn nhấn nút Không, thì giá trị của a là 7.

The Value of a is 7

Hàm VBScript InputBox

Chức năng InputBox giúp người dùng lấy các giá trị từ người dùng. Sau khi nhập các giá trị, nếu người dùng nhấp vào nút OK hoặc nhấn ENTER trên bàn phím, chức năng InputBox sẽ trả về văn bản trong hộp văn bản. Nếu người dùng bấm vào nút Hủy, hàm sẽ trả về một chuỗi trống ("").

Cú pháp

InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])

Mô tả về Thông Số

  • Prompt- Một tham số bắt buộc. Chuỗi được hiển thị dưới dạng thông báo trong hộp thoại. Độ dài tối đa của lời nhắc là khoảng 1024 ký tự. Nếu thông báo kéo dài nhiều hơn một dòng, thì chúng ta có thể phân tách các dòng bằng ký tự xuống dòng (Chr (13)) hoặc ký tự dòng (Chr (10)) giữa mỗi dòng.

  • Title- Một tham số tùy chọn. Biểu thức chuỗi hiển thị trong thanh tiêu đề của hộp thoại. Nếu tiêu đề được để trống, tên ứng dụng sẽ được đặt trên thanh tiêu đề.

  • Default- Một tham số tùy chọn. Một văn bản mặc định trong hộp văn bản mà người dùng muốn được hiển thị.

  • XPos- Một tham số tùy chọn. Vị trí của trục X đại diện cho khoảng cách lời nhắc từ phía bên trái của màn hình theo chiều ngang. Nếu để trống, hộp nhập liệu sẽ được căn giữa theo chiều ngang.

  • YPos- Một tham số tùy chọn. Vị trí của trục Y thể hiện khoảng cách nhanh chóng từ phía bên trái của màn hình Theo chiều dọc. Nếu để trống, hộp nhập sẽ được Căn giữa theo chiều dọc.

  • helpfile- Một tham số tùy chọn. Biểu thức Chuỗi xác định tệp Trợ giúp sẽ sử dụng để cung cấp Trợ giúp theo ngữ cảnh cho hộp thoại.

  • context- Một tham số tùy chọn. Biểu thức số xác định số ngữ cảnh Trợ giúp được tác giả Trợ giúp chỉ định cho chủ đề Trợ giúp thích hợp. Nếu ngữ cảnh được cung cấp, thì hồ sơ trợ giúp cũng phải được cung cấp.

Thí dụ

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         ' Input Box with only Prompt
         InputBox("Enter a number")    
        
         ' Input Box with a Title
         a = InputBox("Enter a Number","Enter Value")
         msgbox a
        
         ' Input Box with a Prompt,Title and Default value
         a = InputBox("Enter a Number","Enter Value",123)
         msgbox a
        
         ' Input Box with a Prompt,Title,Default and XPos
         a = InputBox("Enter your name","Enter Value",123,700)
         msgbox a
        
         ' Input Box with a Prompt,Title and Default and YPos
         a = InputBox("Enter your name","Enter Value",123,,500)
         msgbox a
         
      </script>
   </body>
</html>

Khi tập lệnh trên được thực thi, hộp nhập được hiển thị và hiển thị giá trị đã nhập bởi người dùng.

Đối tượng là gì

Các đối tượng thời gian chạy VBScript giúp chúng ta hoàn thành các tác vụ khác nhau. Phần này sẽ giúp bạn hiểu cách khởi tạo một đối tượng và làm việc với nó.

Cú pháp

Để làm việc với các đối tượng một cách liền mạch, chúng ta cần khai báo đối tượng và khởi tạo nó bằng cách sử dụng Set Từ khóa.

Dim objectname    'Declare the object name
Set objectname = CreateObject(object_type)

Thí dụ

Trong ví dụ dưới đây, chúng tôi đang tạo một đối tượng kiểu Scripting.Dictionary.

Dim obj  
Set obj = CreateObject("Scripting.Dictionary")

Phá hủy các đối tượng

Ý nghĩa của việc hủy đối tượng là giải phóng bộ nhớ và thiết lập lại biến đối tượng.

Cú pháp

Để tiêu diệt các đối tượng, chúng ta cần sử dụng Set Từ khóa theo sau là tên đối tượng và trỏ nó đến Nothing.

Set objectname = Nothing 'Destroy the object.

Thí dụ

Trong ví dụ dưới đây, chúng tôi đang tạo một đối tượng kiểu Scripting.Dictionary.

Dim obj  
Set obj = CreateObject("Scripting.Dictionary")
Set obj = Nothing.

Sử dụng đối tượng

Vui lòng nhấp vào từng loại đối tượng nhất định để biết thêm.

Loại đối tượng Sự miêu tả
Lớp học Lớp là một vùng chứa, chứa các phương thức và biến được liên kết với nó và được truy cập bằng cách tạo một đối tượng của Type Class.
Scripting.FileSystemObject Đây là nhóm các đối tượng mà chúng ta có thể làm việc với hệ thống tệp.
Scripting.Dictionary Một Nhóm các đối tượng, được sử dụng để tạo các đối tượng từ điển.
Gỡ lỗi Đối tượng Toàn cục mà chúng ta có thể gửi đầu ra tới trình gỡ lỗi tập lệnh của Microsoft.

Biểu thức chính quy là một chuỗi các ký tự tạo thành một mẫu, chủ yếu được sử dụng để tìm kiếm và thay thế. Mục đích của việc tạo một mẫu là để khớp các chuỗi cụ thể, để nhà phát triển có thể trích xuất các ký tự dựa trên các điều kiện và thay thế các ký tự nhất định.

Đối tượng RegExp

Đối tượng RegExp giúp các nhà phát triển khớp với mẫu chuỗi và các thuộc tính và phương thức giúp chúng ta làm việc với Biểu thức chính quy một cách dễ dàng. Nó tương tự như RegExp trong JavaScript

Tính chất

  • Pattern - Phương thức Pattern biểu diễn một chuỗi được sử dụng để định nghĩa biểu thức chính quy và nó phải được đặt trước khi sử dụng đối tượng biểu thức chính quy.

  • IgnoreCase- Thuộc tính Boolean đại diện cho nếu biểu thức chính quy cần được kiểm tra với tất cả các kết quả phù hợp có thể có trong một chuỗi nếu đúng hoặc sai. Nếu không được chỉ định rõ ràng, giá trị Bỏ qua được đặt thành Sai.

  • Global- Thuộc tính Boolean biểu thị nếu biểu thức chính quy cần được kiểm tra với tất cả các kết quả phù hợp có thể có trong một chuỗi. Nếu không được chỉ định rõ ràng, giá trị Toàn cục được đặt thành Sai.

Phương pháp

  • Test(search-string) - Phương thức Kiểm tra lấy một chuỗi làm đối số của nó và trả về True nếu biểu thức chính quy có thể được đối sánh thành công với chuỗi, nếu không thì trả về False.

  • Replace(chuỗi tìm kiếm, chuỗi thay thế) - Phương thức Replace nhận 2 tham số. Nếu tìm kiếm thành công thì nó sẽ thay thế trận đấu đó bằng chuỗi thay thế và chuỗi mới được trả về. Nếu không có kết quả phù hợp nào thì chuỗi tìm kiếm ban đầu được trả về.

  • Execute(chuỗi tìm kiếm) - Phương thức Execute hoạt động giống như Replace, ngoại trừ việc nó trả về một đối tượng bộ sưu tập Matches, chứa một đối tượng Match cho mỗi kết quả khớp thành công. Nó không sửa đổi chuỗi gốc.

Đối sánh Đối tượng Bộ sưu tập

Đối tượng bộ sưu tập Matches được trả về là kết quả của phương thức Execute. Đối tượng bộ sưu tập này có thể chứa không hoặc nhiều đối tượng Đối sánh và các thuộc tính của đối tượng này là chỉ đọc.

  • Count - Phương thức Count thể hiện số lượng đối tượng khớp trong tập hợp.

  • Item - Phương thức Item cho phép truy cập các đối tượng khớp từ đối tượng bộ sưu tập trận đấu.

Đối sánh Đối tượng

Đối tượng Match được chứa trong đối tượng bộ sưu tập so khớp. Các đối tượng này đại diện cho kết hợp thành công sau khi tìm kiếm một chuỗi.

  • FirstIndex- Nó đại diện cho vị trí trong chuỗi ban đầu nơi trận đấu xảy ra. Chỉ số này dựa trên 0, có nghĩa là vị trí đầu tiên trong một chuỗi là 0.

  • Length - Giá trị đại diện cho tổng độ dài của chuỗi được so khớp.

  • Value- Giá trị đại diện cho giá trị hoặc văn bản đã so khớp. Nó cũng là giá trị mặc định khi truy cập đối tượng Match.

Tất cả về Tham số mẫu

Việc xây dựng mô hình tương tự như PERL. Xây dựng mẫu là điều quan trọng nhất khi làm việc với Biểu thức chính quy. Trong phần này, chúng ta sẽ đề cập đến cách tạo một mẫu dựa trên các yếu tố khác nhau.

Khớp vị trí

Ý nghĩa của đối sánh vị trí là đảm bảo rằng chúng ta đặt các biểu thức chính quy ở những vị trí chính xác.

Biểu tượng Sự miêu tả
^ Chỉ đối sánh phần đầu của một chuỗi.
$ Chỉ khớp với phần cuối của một chuỗi.
\ b Khớp với bất kỳ ranh giới từ nào
\ B Khớp với bất kỳ ranh giới không phải từ nào

Phù hợp chữ

Bất kỳ dạng ký tự nào như bảng chữ cái, số hoặc ký tự đặc biệt hoặc thậm chí cả số thập phân, hệ thập lục phân đều có thể được coi là Chữ viết. Vì một số ký tự đã có ý nghĩa đặc biệt trong ngữ cảnh của Biểu thức chính quy, chúng ta cần phải thoát khỏi chúng bằng cách sử dụng chuỗi thoát.

Biểu tượng Sự miêu tả
Chữ và số Chỉ đối sánh với các ký tự chữ cái và số.
\ n Khớp với một dòng mới.
\ [ Đối sánh [chỉ theo nghĩa đen
\] Đối sánh] chỉ theo nghĩa đen
\ ( Phù hợp (chỉ theo nghĩa đen
\) Phù hợp) chỉ theo nghĩa đen
\ t Khớp với tab ngang
\ v Khớp với tab dọc
\ | Trận đấu | chỉ theo nghĩa đen
\ { Đối sánh với {chỉ theo nghĩa đen
\} Matches} chỉ theo nghĩa đen
\\ Đối sánh \ chỉ theo nghĩa đen
\? Diêm ? chỉ theo nghĩa đen
\ * Đối sánh * chỉ theo nghĩa đen
\ + Chỉ đối sánh + nghĩa đen
\. Diêm . chỉ theo nghĩa đen
\ b Khớp với bất kỳ ranh giới từ nào
\ B Khớp với bất kỳ ranh giới không phải từ nào
\ f Khớp với nguồn cấp dữ liệu biểu mẫu
\ r Đối sánh ký tự xuống dòng
\ xxx Khớp ký tự ASCII của số bát phân xxx.
\ xdd Khớp ký tự ASCII của dd số thập lục phân.
\ uxxxx Khớp với ký tự ASCII của xxxx theo nghĩa đen UNICODE.

Phù hợp với các lớp nhân vật

Các lớp ký tự là Mẫu được hình thành bằng cách nhóm tùy chỉnh và được đặt trong dấu ngoặc nhọn []. Nếu chúng ta đang mong đợi một lớp ký tự không nên có trong danh sách, thì chúng ta nên bỏ qua lớp ký tự cụ thể đó bằng cách sử dụng ký hiệu phủ định, là cap ^.

Biểu tượng Sự miêu tả
[XYZ] Khớp bất kỳ lớp ký tự nào trong bộ ký tự.
[^ xyz] Khớp với bất kỳ lớp ký tự nào KHÔNG nằm trong bộ ký tự.
. Đối sánh với bất kỳ lớp ký tự nào ngoại trừ \ n
\ w Ghép bất kỳ lớp ký tự từ nào. Tương đương với [a-zA-Z_0-9]
\ W Khớp với bất kỳ lớp ký tự không phải từ nào. Tương đương với [^ a-zA-Z_0-9]
\ d Phù hợp với bất kỳ lớp chữ số nào. Tương đương với [0-9].
\ D Khớp với bất kỳ lớp ký tự không phải chữ số nào. Tương đương với [^ 0-9].
\S Phù hợp với bất kỳ lớp ký tự khoảng trắng nào. Tương đương với [\ t \ r \ n \ v \ f]
\S Phù hợp với bất kỳ lớp ký tự khoảng trắng nào. Tương đương với [^ \ t \ r \ n \ v \ f]

Đối sánh Lặp lại

Đối sánh lặp lại cho phép nhiều tìm kiếm trong biểu thức chính quy. Nó cũng chỉ định số lần một phần tử được lặp lại trong Biểu thức chính quy.

Biểu tượng Sự miêu tả
* Đối sánh không hoặc nhiều lần xuất hiện của Biểu thức chính quy đã cho. Tương đương với {0,}.
+ Đối sánh một hoặc nhiều lần xuất hiện của Biểu thức chính quy đã cho. Tương đương với {1,}.
? Đối sánh không hoặc một lần xuất hiện của Biểu thức chính quy đã cho. Tương đương với {0,1}.
{x} Khớp chính xác x số lần xuất hiện của biểu thức chính quy đã cho.
{x,} Khớp ít nhất x hoặc nhiều lần xuất hiện của biểu thức chính quy đã cho.
{x, y} Khớp x với y số lần xuất hiện của biểu thức chính quy đã cho.

Luân phiên & Nhóm

Luân phiên và nhóm giúp các nhà phát triển tạo Biểu thức chính quy phức tạp hơn trong việc xử lý đặc biệt các mệnh đề phức tạp trong Biểu thức chính quy mang lại sự linh hoạt và kiểm soát tuyệt vời.

Biểu tượng Sự miêu tả
0 Nhóm một mệnh đề để tạo một mệnh đề. "(xy)? (z)" khớp với "xyz" hoặc "z".
| Phép thay thế kết hợp một mệnh đề biểu thức chính quy và sau đó khớp với bất kỳ mệnh đề nào trong số các mệnh đề riêng lẻ. "(ij) | (23) | (pq)" khớp với "ij" hoặc "23" hoặc "pq".

Tạo biểu thức chính quy

Dưới đây là một số ví dụ giải thích rõ ràng cách tạo Biểu thức chính quy.

Biểu hiện thông thường Sự miêu tả
"^ \ s * .." và ".. \ s * $" Biểu thị rằng có thể có bất kỳ số lượng ký tự khoảng trắng đầu và cuối trong một dòng.
"((\ $ \ s?) | (# \ s?))?" Đại diện cho một ký hiệu $ hoặc # tùy chọn theo sau là một khoảng trắng tùy chọn.
"((\ d + (\. (\ d \ d)?)?))" Biểu thị rằng có ít nhất một chữ số, theo sau là một số thập phân tùy chọn và hai chữ số sau số thập phân.

Thí dụ

Ví dụ dưới đây kiểm tra xem người dùng có nhập một id email có định dạng phù hợp hay không để có một id email theo sau là '@' và sau đó là tên miền.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         strid = "[email protected]"
         Set re = New RegExp
         With re
            .Pattern    = "^[\w-\.]{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,3}$"
            .IgnoreCase = False
            .Global     = False
         End With
        
         ' Test method returns TRUE if a match is found
         If re.Test( strid ) Then
            Document.write(strid & " is a valid e-mail address")
         Else
            Document.write(strid & " is NOT a valid e-mail address")
         End If
        
        Set re = Nothing
      </script>
   </body>
</html>

Có ba loại lỗi trong lập trình: (a) Lỗi cú pháp, (b) Lỗi thời gian chạy và (c) Lỗi lôgic.

Lỗi cú pháp

Lỗi cú pháp, còn được gọi là lỗi phân tích cú pháp, xảy ra tại thời điểm diễn giải VBScript. Ví dụ: dòng sau gây ra lỗi cú pháp vì nó thiếu dấu ngoặc đóng -

<script type = "text/vbscript">

   dim x,y
   x = "Tutorialspoint"
   y = Ucase(x

</script>

Lỗi thời gian chạy

Lỗi thời gian chạy, còn được gọi là ngoại lệ, xảy ra trong quá trình thực thi, sau khi diễn giải. Ví dụ: dòng sau gây ra lỗi thời gian chạy bởi vì cú pháp ở đây là chính xác nhưng trong thời gian chạy, nó đang cố gắng gọi fnmultiply, đây là một hàm không tồn tại -

<script type = "text/vbscript">
   Dim x,y
   x = 10
   y = 20
   z = fnadd(x,y)
   a = fnmultiply(x,y)
   
   Function fnadd(x,y)
      fnadd = x+y
   End Function

</script>

Lỗi logic

Lỗi logic có thể là loại lỗi khó theo dõi nhất. Những lỗi này không phải là kết quả của lỗi cú pháp hoặc lỗi thời gian chạy. Thay vào đó, chúng xảy ra khi bạn mắc lỗi logic điều khiển tập lệnh của bạn và bạn không nhận được kết quả như mong đợi. Bạn không thể mắc phải những lỗi đó, bởi vì nó phụ thuộc vào yêu cầu kinh doanh của bạn loại logic nào bạn muốn đưa vào chương trình của mình. Ví dụ: chia một số cho không hoặc một tập lệnh được viết đi vào vòng lặp vô hạn.

Đối tượng Err

Nếu chúng ta gặp lỗi thời gian chạy, việc thực thi sẽ dừng lại bằng cách hiển thị thông báo lỗi. Là một nhà phát triển, nếu chúng tôi muốn ghi lại lỗi, thìError Đối tượng được sử dụng.

Thí dụ

Trong ví dụ dưới đây, Err.Number đưa ra số lỗi và Err.Description đưa ra mô tả lỗi.

<script type = "text/vbscript">
  
  Err.Raise 6     ' Raise an overflow error.
  MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
  Err.Clear       ' Clear the error.

</script>

VBScript có một số câu lệnh 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
ID 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 có 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 loạt hoạt động trên một đối tượng được chỉ định mà không cần nhắc đi nhắc lại 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 mã sau, Winword sẽ được mở và nhập văn bản được chỉ định.

<!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 mã sau, Winword sẽ được mở và nhập văn bản được chỉ định.

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