VBScript - Mảng
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 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 chỉ định 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 so với 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 thường được sử dụng 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ột 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ó 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 | 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ột mảng chuỗi dựa trên một tiêu chí bộ 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. |