Hàm và thủ tục trong VBScript

Một phần của tài liệu Giáo trình thiết kế web (Trang 88 - 92)

Bài 4. SCRIPT TRONG TRANG WEB

4.3. CƠ BẢN VỀ VBSCRIPT

4.3.2. Hàm và thủ tục trong VBScript

*) Biến trong VBScript không cần xác định kiểu, các biến không cấu trúc được xem là biến vô hướng, có thể chứa và tự chuyển đổi hầu hết các kiểu dữ liệu. Khai báo biến bằng từ khóa Dim. Ví dụ:

87

<%

Dim x, y x = 5 y = “2”

Response.Write(x+y)

‘Kết quả in ra màn hình là : 7

%>

*) Hằng được khai báo bằng từ khóa Const. Ví dụ:

<%

Const p = 3.14

Const str=”Danang College of Education”

%>

- Mảng được định nghĩa và truy xuất thông qua chỉ số. Ví dụ :

<%

Dim A(5)

‘Mãng gồm 5 phần tử, phần tử đầu tiên có chỉ số là 0 A(0)= 5

...

A(5) = 0

%>

+ Để khai báo mãng động (có thể thay đổi kích thước) : Dim A(). Sau đó ta có thể thay đổi kích thức qua lệnh REDIM. Ví dụ : ReDim A(6).

+ Nếu muốn áp đặt phải khai báo biến trước khi sử dụng (và đây là điều cần thiết) ta khai báo trước thẻ <HTML> dòng lệnh <%Option Explicit%>

+ Để hiển thị giá trị một biểu thức trên trang web ta dùng một trong hai phương pháp : Sử dụng phương thức Write của Object Response: Response. Write(bthức)

Sử dụng cách viết tắt của Response. Write(bthức) : <% =bthức %>

*) Chú thích

Sử dụng dấu nháy đơn để bắt đầu một dòng ghi chú. Ví dụ :

<%

‘In ra chuỗi Hello World !

Response.Write(“Hello World !”)

%>

*) Các toán tử

- Các toán tử số học : +, -, *, / , mod, \ (chia lấy phần nguyên), ^ (lũy thừa) - Các toán tử so sánh : =, >, <, <=, >= và <>

- Các toán tử logic : NOT, AND, OR, XOR - Các toán tử cộng chuỗi : + hoặc &

Các cấu trúc điều khiển Các lệnh điều khiển rẽ nhánh - if ... then và if ... then ... else

88 - select case

Ví dụ 1:

<%@ Language = VBScript %>

<%

Dim ngay

Ngay = #23/07/2005#

If ngay<Now then

Response. Write(“Trước đây”)

‘Now là hàm trả về ngày hiện tại của hệ thống Else

Response. Write(“Sau này”) End if

%>

Ví dụ 2:

<%@ Language = VBScript %>

<%

Dim so So = 7

Select case (So mod 2) Case 0

Response.Write(so&” là một số chẳn”) Case 1

Response.Write(so&” là một số lẻ”) End Select

%>

*) Các lệnh lặp

VBScript cung cấp 4 dạng câu lệnh lặp mà chúng ta đã nghiên cứu trong VB:

- For ... Next : lặp với số lần xác định

- For Each... Next : lặp với các phần tử trong một tập hợp

- Do ... Loop : lặp trong khi điều kiện kiểm tra của Loop còn đúng. Câu lệnh này có 2 biến thể: Do ... While và Do ... Until.

- While ... Wend : lặp trong khi điều kiện kiểm tra của While còn đúng.

*) Hàm

- Khai báo một hàm : Function ... End Function

Hàm trả về một giá trị thông qua tên gọi hàm n ên có thể tham gia trong một biểu thức như một toán hạng. VBScript có một số hàm dựng sẵn (cách sử dụng tương tự như trong VB):

- Các hàm toán học : ATN, COS, SIN, TAN, EXP, LOG, SQR, RND, INT - Các hàm thao tác trên chuỗi :

INSTR : trả về vị trí bắt đầu của một chuỗi con subStr trong một chuỗi khác Str.

Cú pháp InStr(subStr, Str).

89 LEN : trả về số k tự của một chuỗi.

LCASE : chuyển một chuỗi viết thường sang viết hoa, tương tự cho UCASE

LTRIM : trả về một chuỗi đã loại bỏ các k tự trống phía bên trái. Tương tự, ta có các hàm RTRIM, TRIM

STRING : trả về một chuỗi gồm một số k tự giống nhau. Ví dụ : String(5,”b”) cho lại chuỗi “bbbbb”

LEFT : trả về một chuỗi con trong một chuỗi Str bắt đầu từ vị trí đầu tiên bên trái cho đến k tự thứ num. Cú pháp: LEFT(Str, num). Tương tự ta có hàm RIGHT.

MID : trả về một chuỗi con gồm num k tự trong một chuỗi Str bắt đầu từ vị trí pos.

Cú pháp: MID(Str, pos, num)

- Các hàm về ngày giờ: DATE, TIME, NOW, WEEKDAY, WEEKDAYNAME, YEAR, MONTH, DAY, HOUR, MINUTE, SECOND.

DATEDIFF : trả về số ngày tồn tại giữa hai ngày DATEADD : cộng thêm số ngày trả về số ngày mới - Các hàm chuyển đổi kiểu dữ liệu

ABS : trả về giá trị tuyệt đối của một số ASC : trả về mã ASCII của một k tự ASCW : trả về mã Unicode của một k tự CHR : trả về k tự có mã theo AINSI

CDATE : trả về giá trị của đối số theo variant có kiểu là Date ROUND : làm tròn số

- Các hàm kiểm tra

ISARRAY : kiểm tra một biểu thức có phải là một mảng hay không.

ISDATE : kiểm tra một biểu thức có phải kiểu Date hay không.

ISEMPTY : kiểm tra một biến đã được khởi tạo chưa.

ISNULL : kiểm tra một biểu thức có phải là NULL không ISNUMERIC : kiểm tra một biểu thức có phải là số không

*) Thủ tục

Khai báo một thủ tục : Sub ... End Sub Gọi một thủ tục : call tên_thủ_tục

Ví dụ : xây dựng hàm chuyển đổi độ C sang độ F

<%

Function Celsius(fDegrees) Celsius = (fDegrees-32)*5/9

’ gán giá trị cho hàm End Function

‘thủ tục in ra cửa sổ trang web kết quả chuyển đổi Sub ConvertTemp()

Response. Write(“Nhiệt độ là :”&Celsius(95)&” độ C”) End Sub

‘Gọi thủ tục

90 Call ConvertTemp

%>

Một phần của tài liệu Giáo trình thiết kế web (Trang 88 - 92)

Tải bản đầy đủ (PDF)

(98 trang)