ASP內置了兩種語法引擎,分別是VBScript和JScript。
VBScript是VB的一個子集。JScript和JavaScript有些類似。
如果你熟悉VB,建議用VBScript,否則推薦使用JScript語法,這樣學習JavaScript時得心應手。
本入門系列我們將采用VBScript進行講解。
選擇一個順手的開發工具
我還是習慣用Dreamweaver CS6來進行開發,主要看中它的代碼着色、自動提示、站點管理等功能。
VBScript初窺
首先看一段ASP代碼,如下圖
1.一段ASP代碼應包含在”<%”和”%>”中。
2.第一行代碼中的”@”指令來進行一些配置,比如上面的腳本語言、頁面編碼信息等。
VBScript的變量、常量和數據類型
VBScript只有一種類型就是Variant類型,它可以包含各種類型數據。
在聲明使用的時候,不需要指定變量的數據類型,並且變量在使用的時候也沒有必要先聲明,但是我個人強烈建議在ASP代碼頭部放入“Option Explicit”語句,強制變量使用前聲明。
如果使用 Option Explicit,該語句必須出現在腳本的任何其他語句之前。
<% '注釋以"'"單引號開始,有效范圍是當前行 Option Explicit '變量需要強制聲明 Dim sString '聲明了一個sString變量 Dim Str1, Str2, Str3 '聲明了三個變量 Const MyName = "ASP" '聲明了一個常量,在使用過程中不能改變其值 %>
VBScript的算術運算符
通過下面的代碼我們來學習所有的運算符
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <% Option Explicit %> <!-- '如果使用 Option Explicit,該語句必須出現在腳本的任何其他語句之前。--> <!doctype html> <html> <head> <meta charset="utf-8"> <title>VBScript的算術運算符</title> </head> <body> <h1>VBScript的算術運算符</h1> <% Dim Num1, Num2, Result Num1 = 10 Num2 = 20 Response.Write("Num1 = " & Num1 & ", Num2 = " & Num2 & "<br><hr>") '加法運算 Result = Num1 + Num2 Response.Write("Num1 + Num2 = " & Result & "<br>") '減法運算 Result = Num1 - Num2 Response.Write("Num1 - Num2 = " & Result & "<br>") '乘法運算 Result = Num1 * Num2 Response.Write("Num1 * Num2 = " & Result & "<br>") '除法運算 Result = Num1 / Num2 Response.Write("Num1 / Num2 = " & Result & "<br>") '整除運算 Result = Num1 \ Num2 Response.Write("Num1 \ Num2 = " & Result & "<br>") 'n次方運算 Result = Num1 ^ 3 Response.Write("Num1 ^ 3 = " & Result & "<br>") '取余數運算 Result = Num1 Mod 3 Response.Write("Num1 Mod 3 = " & Result & "<br") %> </body> </html>
VBScrpit的比較、邏輯運算符
當表達式有多種運算符時,先處理算術運算符,接着處理比較運算符,然后再處理邏輯運算符。
所有比較運算符有相同的優先級,按照它們出現的順序從左到右進行處理。
算術運算符和邏輯運算符的優先級按照下面順序進行:
優先級 | 高 | 中 | 低 |
高 | 算術運算符 | 比較運算符 | 邏輯運算符 |
指數運算(^) | = | Not | |
負數(-) | <> | And | |
乘法和除法(*,/) | < | Or | |
整除(\) | > | Xor | |
求余數運算(Mod) | <= | Eqv | |
加法和減法(+,-) | >= | Imp | |
低 | 字符串連接 (&) | Is | & |
示例代碼如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <% Option Explicit %> <!-- '如果使用 Option Explicit,該語句必須出現在腳本的任何其他語句之前。--> <!doctype html> <html> <head> <meta charset="utf-8"> <title>VBScript的比較、邏輯運算符</title> </head> <body> <h1>VBScript的比較、邏輯運算符</h1> <% Dim bResult '聲明一個布爾型變量 '比較兩個數字的大小 bResult = 1 > 2 Response.Write("1 > 2 " & bResult & "<br>") '比較字符串是否相等 bResult = "abcde" = "acbde" Response.Write("""abcde"" = ""acbde"" " & bResult & "<br>") '比較字符串大小,一位一位比較 bResult = "abcde" > "acbde" Response.Write("""abcde"" > ""acbde"" " & bResult & "<br>") '日期用##符號括起來,邏輯運算符測試 bResult = Date > #2007-1-1# AND Date < #2007-6-22# Response.Write("當前日期 > #2007-1-1# AND 當前日期 < #2007-6-22# " & bResult) %> </body> </html>
運行結果如下:
VBScript的數組變量
數組變量用於在一個單一的變量中存儲多個值。
下面的代碼中,聲明了一個包含3個元素的數組。
<% Dim names(2) '聲明了一個包含三個元素的數組names '為names數組的每個元素賦值,如下: names(0) = "Tove " names(1) = "Jani " names(2) = "Stale " Response.Write(names(0) & names(1) & names(2)) %>
括號內顯示2。數組的下標以0開始,因此該數組包含3個元素。
多維數組的聲明方法是在括號中用逗號分隔數字,可以多達60個維數。
示例代碼如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <% Option Explicit %> <!-- '如果使用 Option Explicit,該語句必須出現在腳本的任何其他語句之前。--> <!doctype html> <html> <head> <meta charset="utf-8"> <title>VBScript的數組變量</title> </head> <body> <h1>VBScript的數組變量</h1> <% Dim i, j '循環變量 Dim x(1, 2) '聲明了一個包含2行3列的2維數組 '為數組x的6個元素賦值 x(0, 0) = "Volvo" x(0, 1) = "BMW" x(0, 2) = "Ford" x(1, 0) = "Apple" x(1, 1) = "Orange" x(1, 2) = "Banana" '循環顯示x數組的全部元素 for i = 0 to 1 Response.Write("<p>") for j = 0 to 2 Response.Write(x(i, j) & "<br>") next Response.Write("</p>") next %> </body> </html>
顯示結果如下: