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