無(wú)線標(biāo)記語(yǔ)言(WML)基礎(chǔ)之WMLScript 基礎(chǔ)第1/2頁(yè)
更新時(shí)間:2007年03月14日 00:00:00 作者:
WML Script是屬于無(wú)限應(yīng)用協(xié)議WAP應(yīng)用層的一部分,使用它可以向WML卡片組和卡片中添加客戶(hù)端的處理邏輯,目前最新的版本是1.1版。WML Script1.1是在歐洲計(jì)算機(jī)制造商協(xié)議會(huì)制定的ECMAScript腳本語(yǔ)言的基礎(chǔ)上,經(jīng)過(guò)修改和優(yōu)化而指定的。它能夠更好的支持諸如移動(dòng)電話類(lèi)的乍帶寬通信設(shè)備,在WML編程中使用WML Script可以有效的增強(qiáng)客戶(hù)端應(yīng)用的靈活性,而且,我們也可以把WML Script作為一個(gè)工具使用,開(kāi)發(fā)出功能強(qiáng)大的WAP網(wǎng)絡(luò)應(yīng)用和無(wú)限網(wǎng)頁(yè)。本章我們將詳細(xì)講解WML Script1.1編程的基礎(chǔ)預(yù)法制時(shí),如基本規(guī)則、變量預(yù)數(shù)據(jù)類(lèi)型、操作賦予表達(dá)式等。為了敘述上的簡(jiǎn)便,以后我們將“WML Script1.1”簡(jiǎn)稱(chēng)“WMLScript ”。
4.1 WML 程序中調(diào)用WML Script函數(shù)
經(jīng)過(guò)前兩章的學(xué)習(xí),熟悉C語(yǔ)言的讀者可能會(huì)認(rèn)識(shí)到,WML 的函數(shù)功能、邏輯運(yùn)算功能等都是十分有限的。而WMLScript提供了豐富的函數(shù)功能,我們?cè)赪AP應(yīng)用開(kāi)發(fā)可以使用WMLScript來(lái)增強(qiáng)WML編程。因此,WMLScript成為擴(kuò)展WML編程能力的主要開(kāi)發(fā)工具。
4.2 WMLScript的主要優(yōu)點(diǎn)及其字節(jié)碼解釋器
WMLScript具有一套定義好的字節(jié)碼和一個(gè)解釋器參考結(jié)構(gòu)。無(wú)線網(wǎng)絡(luò)傳輸中WMLScript的數(shù)據(jù)均以二進(jìn)制格式進(jìn)行傳輸,所以,用戶(hù)可以使用乍帶寬通信信道,從而能夠保持客戶(hù)端手機(jī)只需要最小限度的內(nèi)存。ECMAScript修改后得到的WMLScript能夠更快、更小、更容易的編譯程序?yàn)樽止?jié)碼形式。所有這些特點(diǎn),是WMLScript具備了WML所不能具備的很多優(yōu)點(diǎn)和功能。
4.2.1 使用WMLScript的主要優(yōu)點(diǎn)
WMLScript的設(shè)計(jì)宗旨是為WMLScript系統(tǒng)提供一般的腳本處理能力,使用WMLScript我們可以進(jìn)一步補(bǔ)充基于XML的WML語(yǔ)言的編程功能,開(kāi)發(fā)針對(duì)乍帶寬的網(wǎng)絡(luò)應(yīng)用及內(nèi)容,如文本、圖像、選擇列表等,我們可以使用簡(jiǎn)單的格式編寫(xiě)出更靈活和更具可讀性的用戶(hù)界面。WMLScript具備的WML所不能具備的優(yōu)點(diǎn)和功能,主要包括如下幾個(gè)方面:
?。?)檢查用戶(hù)輸入的合法性:
?。?)擴(kuò)展用戶(hù)瀏覽器的功能,比如允許程序員開(kāi)發(fā)手機(jī)的電話呼叫、發(fā)送短信息、存儲(chǔ)電話號(hào)碼、管理電話簿或SIM卡等;
?。?)生成用戶(hù)端的確認(rèn)、提示、警告信息或操作對(duì)話框,并使之快速顯示在瀏覽器上;
(4)在用戶(hù)瀏覽器的更改后,能夠?qū)g覽器端的軟件和參數(shù)進(jìn)行擴(kuò)展與配置;
?。?)最大程度克服客戶(hù)端的乍帶寬通信連接限制,并提供豐富的程序功能;
?。?)補(bǔ)充WML并使之實(shí)現(xiàn)針對(duì)微型移動(dòng)終端設(shè)備的多種服務(wù),如支持高級(jí)用戶(hù)界面、增加客戶(hù)端智能型、提供用戶(hù)瀏覽器外圍功能的訪問(wèn)能力,以及在服務(wù)器與客戶(hù)端瀏覽傳輸數(shù)據(jù)是減少帶寬占用等。
4.2.2 WMLScript的字節(jié)碼解釋器
在WMLScript的字節(jié)碼解釋器解釋之前,WMLScript語(yǔ)言編寫(xiě)的文本格式的程序?qū)⒈皇紫染幾g為二進(jìn)制格式的代碼。編譯時(shí),編譯器通常先將WMLScript程序分成若干個(gè)編輯單位,每個(gè)單位的程序都包含一定數(shù)量的語(yǔ)句行和WMLScript函數(shù),然后,WMLScript的編譯器將按照這些編譯單位,逐一將WMLScript程序作為輸入內(nèi)容,而把對(duì)應(yīng)的字節(jié)碼作為輸出內(nèi)容。當(dāng)用戶(hù)通過(guò)WAP手機(jī)調(diào)用WMLScript程序時(shí),編譯器的編碼功能即被激活、執(zhí)行。
4.3 WMLScript基本規(guī)則
WMLScript在許多基本規(guī)則方面沿用了WML的做法。不過(guò),由于WMLScript是以C語(yǔ)言為藍(lán)本而指定的,所以它的語(yǔ)法特征和C語(yǔ)言非常相像。如果大家對(duì)C語(yǔ)言比較熟悉,那么學(xué)習(xí)和掌握這部分內(nèi)容應(yīng)當(dāng)是比較容易的。
4.3.1 WMLScript與URL
與WML一樣,WMLScript也沿用了WWW和HTML訪問(wèn)資源的URL、HTTP等規(guī)范,并擴(kuò)大了URL使用的范圍。在WMLScript中,不僅超鏈接、文件路徑即文件名可以作為URL處理,外部函數(shù)、訪問(wèn)控制信息等也可以作為URL處理。
為此,WMLScript采用了WML的變通方法,即改進(jìn)HTML命名資源為值的方式,采用程序段錨點(diǎn)(Fragment Anchor)的形式來(lái)處理資源定位。程序段錨點(diǎn)根據(jù)文檔URL規(guī)則進(jìn)行定義,并按照程序段標(biāo)識(shí)符前加井字號(hào)(#)的方式書(shū)寫(xiě)。使用程序段錨點(diǎn),WMLScript程序可以在WMLScript編譯單位內(nèi)可任意指定的函數(shù),并可在調(diào)用該函數(shù)的同時(shí)傳遞所需的參數(shù)。
4.3.2 詞法結(jié)構(gòu)
WMLScript編程中的詞法結(jié)構(gòu)并不復(fù)雜,我們下面就從大小寫(xiě)敏感、空格、換行、注釋即保留字等方面講解相關(guān)的具體規(guī)則。
?。?)內(nèi)容類(lèi)型。WMLScript的內(nèi)容類(lèi)型主要針對(duì)文件形式和二進(jìn)制形式兩種情況,類(lèi)型結(jié)構(gòu)可以在服務(wù)器端進(jìn)行指定,具體形式為:
文本形式:text/vnd.wap.wmlscript;
二進(jìn)制形式:application/vnd.wap.wmlscriptc。
具體指定方法我們?cè)诘?章已經(jīng)介紹過(guò),這里不再重述。
?。?)大小寫(xiě)敏感。WMLScript1.1是一種大小寫(xiě)敏感的腳本語(yǔ)言。它所設(shè)計(jì)的各種關(guān)鍵字、變量和函數(shù)名都必須合理的使用大小寫(xiě)。
?。?)空格和換行。一般情況下,WMLScript程序值形式將忽略所有的空格、制表符合換行符等。但如果把這些特殊字符通過(guò)代碼進(jìn)行表述,或者作為字符串進(jìn)行處理時(shí),WMLScript將不再忽略它們。了如,字符串"Oct 28,2001"中含有空格,該空格在執(zhí)行時(shí)就不會(huì)被忽略,它與不含空格的字符串"Oct28,2001"是不同的。
?。?)注釋。與WML編程一樣,在WMLScript腳本程序中也可以加入注釋內(nèi)容。注釋內(nèi)容不被程序執(zhí)行,且注釋不能嵌套。WMLScript的注釋方法有兩種:
其一,行注釋。即使用雙斜行號(hào)(//)引導(dǎo)以一行內(nèi)容,這一行內(nèi)容全部作為注釋內(nèi)容。如:
//這是以行注釋?zhuān)呻p斜杠號(hào)開(kāi)始到結(jié)束都是注釋。
其二,塊選擇。即以符號(hào)“/*”開(kāi)始,而以符號(hào)“/*”結(jié)束的期間所有內(nèi)容都是注釋內(nèi)容。如:
/*這就是塊注釋?zhuān)釉谥虚g的內(nèi)容就是注釋內(nèi)容*/
?。?)數(shù)據(jù)類(lèi)型與直接編碼。WMLScript允許將4種類(lèi)型的數(shù)據(jù)直接編碼并可嵌套并可嵌如在程序之中。直接編碼的4中數(shù)據(jù)類(lèi)型為:整數(shù)、浮點(diǎn)數(shù)、字符串和布爾值。另外,“無(wú)效性”值也可直接編碼” 1. 整數(shù)。當(dāng)以十進(jìn)制、十六進(jìn)制或八進(jìn)制方式使用整數(shù)時(shí),可對(duì)這類(lèi)整數(shù)進(jìn)行直接編碼。
編程序時(shí),十進(jìn)制的數(shù)字均不以0開(kāi)頭,只包含0~9的數(shù)值串;十六進(jìn)制的數(shù)據(jù)以O(shè)X或者Ox開(kāi)頭,只包含0~9、a~f或者A~F的字符串;八進(jìn)制的數(shù)均以0開(kāi)頭,只包含0~7的數(shù)字串。
2.浮點(diǎn)數(shù)。浮點(diǎn)數(shù)通常定義為含有小數(shù)點(diǎn)的數(shù)字,可以包含小數(shù)和指數(shù)部分。浮點(diǎn)數(shù)的形式較多,可以使十進(jìn)制的整數(shù)或浮點(diǎn)數(shù),可以是分?jǐn)?shù),也可以是指數(shù);但一個(gè)浮點(diǎn)數(shù)必須至少有一個(gè)數(shù)。
指數(shù)是以e或E開(kāi)頭,后面跟著一個(gè)整數(shù)。指數(shù)是以10為底冪。例如:e0時(shí)10的零次冪,例如:e0時(shí)10的另次冪,e-2時(shí)10的負(fù)2次冪集等于0.01。指數(shù)可以帶符號(hào),正好(+)或者減號(hào)(-),它們分別代表是正指數(shù)和負(fù)指數(shù)。
3.字符串。字符串是指定義在成對(duì)的雙引號(hào)("")或單引號(hào)(‘ ')之間的內(nèi)容。
由于WMLScript只允許使用成對(duì)的雙引號(hào)或但引號(hào)來(lái)定義字符串,所以程序中使用一個(gè)單引號(hào)或一個(gè)雙引號(hào)時(shí)就會(huì)出現(xiàn)編譯錯(cuò)誤。
考慮到有些特殊字符不能在字符串中直接顯現(xiàn)出來(lái),所以WMLScript提供了轉(zhuǎn)譯序列來(lái)表示這些特殊字符。
4.布爾型。它只是ture和false兩個(gè)數(shù)值,用于表示W(wǎng)MLScript中的“真值”或“假值”。布爾型數(shù)據(jù)可參與異、或等運(yùn)算,具體規(guī)則我們后面介紹。
5.無(wú)效型。也稱(chēng)為“空類(lèi)型”,它是WMLScript支持的一個(gè)表示無(wú)效值的量,以invalid表示。該兩與C語(yǔ)言中的NULL類(lèi)似。
4.保留字。WMLScript中定義有一個(gè)保留字集合,含有一些表示特殊意義的單詞這些次不能另外定義,也不能最為其他標(biāo)識(shí)符。WMLScript中的保留字如下:
acces http agent if break isvalid continue meta header
div name div= path domain return else typeof while
equiv url extern use for user function var
另外,WMLScript還為將來(lái)的版本預(yù)留了一些保留字,主要有:
case finally catch import class private const public debugger
sizeof default struct do super enum switch export throw
extends try
WMLScript還有一些沒(méi)有使用的保留字:
delete null in this lib void new with
7.標(biāo)識(shí)符。WMLScript的標(biāo)識(shí)符可以指定或命名3種元素:變量、函數(shù)和標(biāo)注。標(biāo)識(shí)符不能以數(shù)字開(kāi)頭,但能一段下劃線(-)開(kāi)頭,而且,標(biāo)識(shí)符不能是WMLScript的保留字。例如,timeOfDay、speed 、quality、HOME_ADDRESS、_myName、__、varO等都是合法的標(biāo)識(shí)符;而以數(shù)字或非短下劃線的特殊符號(hào)開(kāi)頭的字串,以及保留字等都屬于不合法的標(biāo)志賦,如while、for、if、my~name、$sys、123、3piecs、take.this等。
由于WMLScript是嚴(yán)格區(qū)分大小寫(xiě)的,所以字母相同但大小寫(xiě)不同的標(biāo)識(shí)符不是同一個(gè)標(biāo)識(shí),例如,Work和work就是不同的標(biāo)識(shí)符。
8.名稱(chēng)空間。WMLScript提供了比較自由的名稱(chēng)空間,同一標(biāo)識(shí)符可以同時(shí)用作不同的目的。例如,作為某一函數(shù)名稱(chēng)的標(biāo)識(shí)符,還可以同時(shí)用作變量名、函數(shù)參數(shù)、程序標(biāo)注等,使用時(shí)他們的屬性或值等并不相互影響。在下面的簡(jiǎn)單的例程中,myTest這一標(biāo)識(shí)符即用作了函數(shù)名,又用作了變量名、函數(shù)參數(shù)名、函數(shù)參數(shù)名、常量名。顯然,WMLScript的這一特定為我們編寫(xiě)程序提供了很大的方便。
4.1 WML 程序中調(diào)用WML Script函數(shù)
經(jīng)過(guò)前兩章的學(xué)習(xí),熟悉C語(yǔ)言的讀者可能會(huì)認(rèn)識(shí)到,WML 的函數(shù)功能、邏輯運(yùn)算功能等都是十分有限的。而WMLScript提供了豐富的函數(shù)功能,我們?cè)赪AP應(yīng)用開(kāi)發(fā)可以使用WMLScript來(lái)增強(qiáng)WML編程。因此,WMLScript成為擴(kuò)展WML編程能力的主要開(kāi)發(fā)工具。
4.2 WMLScript的主要優(yōu)點(diǎn)及其字節(jié)碼解釋器
WMLScript具有一套定義好的字節(jié)碼和一個(gè)解釋器參考結(jié)構(gòu)。無(wú)線網(wǎng)絡(luò)傳輸中WMLScript的數(shù)據(jù)均以二進(jìn)制格式進(jìn)行傳輸,所以,用戶(hù)可以使用乍帶寬通信信道,從而能夠保持客戶(hù)端手機(jī)只需要最小限度的內(nèi)存。ECMAScript修改后得到的WMLScript能夠更快、更小、更容易的編譯程序?yàn)樽止?jié)碼形式。所有這些特點(diǎn),是WMLScript具備了WML所不能具備的很多優(yōu)點(diǎn)和功能。
4.2.1 使用WMLScript的主要優(yōu)點(diǎn)
WMLScript的設(shè)計(jì)宗旨是為WMLScript系統(tǒng)提供一般的腳本處理能力,使用WMLScript我們可以進(jìn)一步補(bǔ)充基于XML的WML語(yǔ)言的編程功能,開(kāi)發(fā)針對(duì)乍帶寬的網(wǎng)絡(luò)應(yīng)用及內(nèi)容,如文本、圖像、選擇列表等,我們可以使用簡(jiǎn)單的格式編寫(xiě)出更靈活和更具可讀性的用戶(hù)界面。WMLScript具備的WML所不能具備的優(yōu)點(diǎn)和功能,主要包括如下幾個(gè)方面:
?。?)檢查用戶(hù)輸入的合法性:
?。?)擴(kuò)展用戶(hù)瀏覽器的功能,比如允許程序員開(kāi)發(fā)手機(jī)的電話呼叫、發(fā)送短信息、存儲(chǔ)電話號(hào)碼、管理電話簿或SIM卡等;
?。?)生成用戶(hù)端的確認(rèn)、提示、警告信息或操作對(duì)話框,并使之快速顯示在瀏覽器上;
(4)在用戶(hù)瀏覽器的更改后,能夠?qū)g覽器端的軟件和參數(shù)進(jìn)行擴(kuò)展與配置;
?。?)最大程度克服客戶(hù)端的乍帶寬通信連接限制,并提供豐富的程序功能;
?。?)補(bǔ)充WML并使之實(shí)現(xiàn)針對(duì)微型移動(dòng)終端設(shè)備的多種服務(wù),如支持高級(jí)用戶(hù)界面、增加客戶(hù)端智能型、提供用戶(hù)瀏覽器外圍功能的訪問(wèn)能力,以及在服務(wù)器與客戶(hù)端瀏覽傳輸數(shù)據(jù)是減少帶寬占用等。
4.2.2 WMLScript的字節(jié)碼解釋器
在WMLScript的字節(jié)碼解釋器解釋之前,WMLScript語(yǔ)言編寫(xiě)的文本格式的程序?qū)⒈皇紫染幾g為二進(jìn)制格式的代碼。編譯時(shí),編譯器通常先將WMLScript程序分成若干個(gè)編輯單位,每個(gè)單位的程序都包含一定數(shù)量的語(yǔ)句行和WMLScript函數(shù),然后,WMLScript的編譯器將按照這些編譯單位,逐一將WMLScript程序作為輸入內(nèi)容,而把對(duì)應(yīng)的字節(jié)碼作為輸出內(nèi)容。當(dāng)用戶(hù)通過(guò)WAP手機(jī)調(diào)用WMLScript程序時(shí),編譯器的編碼功能即被激活、執(zhí)行。
4.3 WMLScript基本規(guī)則
WMLScript在許多基本規(guī)則方面沿用了WML的做法。不過(guò),由于WMLScript是以C語(yǔ)言為藍(lán)本而指定的,所以它的語(yǔ)法特征和C語(yǔ)言非常相像。如果大家對(duì)C語(yǔ)言比較熟悉,那么學(xué)習(xí)和掌握這部分內(nèi)容應(yīng)當(dāng)是比較容易的。
4.3.1 WMLScript與URL
與WML一樣,WMLScript也沿用了WWW和HTML訪問(wèn)資源的URL、HTTP等規(guī)范,并擴(kuò)大了URL使用的范圍。在WMLScript中,不僅超鏈接、文件路徑即文件名可以作為URL處理,外部函數(shù)、訪問(wèn)控制信息等也可以作為URL處理。
為此,WMLScript采用了WML的變通方法,即改進(jìn)HTML命名資源為值的方式,采用程序段錨點(diǎn)(Fragment Anchor)的形式來(lái)處理資源定位。程序段錨點(diǎn)根據(jù)文檔URL規(guī)則進(jìn)行定義,并按照程序段標(biāo)識(shí)符前加井字號(hào)(#)的方式書(shū)寫(xiě)。使用程序段錨點(diǎn),WMLScript程序可以在WMLScript編譯單位內(nèi)可任意指定的函數(shù),并可在調(diào)用該函數(shù)的同時(shí)傳遞所需的參數(shù)。
4.3.2 詞法結(jié)構(gòu)
WMLScript編程中的詞法結(jié)構(gòu)并不復(fù)雜,我們下面就從大小寫(xiě)敏感、空格、換行、注釋即保留字等方面講解相關(guān)的具體規(guī)則。
?。?)內(nèi)容類(lèi)型。WMLScript的內(nèi)容類(lèi)型主要針對(duì)文件形式和二進(jìn)制形式兩種情況,類(lèi)型結(jié)構(gòu)可以在服務(wù)器端進(jìn)行指定,具體形式為:
文本形式:text/vnd.wap.wmlscript;
二進(jìn)制形式:application/vnd.wap.wmlscriptc。
具體指定方法我們?cè)诘?章已經(jīng)介紹過(guò),這里不再重述。
?。?)大小寫(xiě)敏感。WMLScript1.1是一種大小寫(xiě)敏感的腳本語(yǔ)言。它所設(shè)計(jì)的各種關(guān)鍵字、變量和函數(shù)名都必須合理的使用大小寫(xiě)。
?。?)空格和換行。一般情況下,WMLScript程序值形式將忽略所有的空格、制表符合換行符等。但如果把這些特殊字符通過(guò)代碼進(jìn)行表述,或者作為字符串進(jìn)行處理時(shí),WMLScript將不再忽略它們。了如,字符串"Oct 28,2001"中含有空格,該空格在執(zhí)行時(shí)就不會(huì)被忽略,它與不含空格的字符串"Oct28,2001"是不同的。
?。?)注釋。與WML編程一樣,在WMLScript腳本程序中也可以加入注釋內(nèi)容。注釋內(nèi)容不被程序執(zhí)行,且注釋不能嵌套。WMLScript的注釋方法有兩種:
其一,行注釋。即使用雙斜行號(hào)(//)引導(dǎo)以一行內(nèi)容,這一行內(nèi)容全部作為注釋內(nèi)容。如:
//這是以行注釋?zhuān)呻p斜杠號(hào)開(kāi)始到結(jié)束都是注釋。
其二,塊選擇。即以符號(hào)“/*”開(kāi)始,而以符號(hào)“/*”結(jié)束的期間所有內(nèi)容都是注釋內(nèi)容。如:
/*這就是塊注釋?zhuān)釉谥虚g的內(nèi)容就是注釋內(nèi)容*/
?。?)數(shù)據(jù)類(lèi)型與直接編碼。WMLScript允許將4種類(lèi)型的數(shù)據(jù)直接編碼并可嵌套并可嵌如在程序之中。直接編碼的4中數(shù)據(jù)類(lèi)型為:整數(shù)、浮點(diǎn)數(shù)、字符串和布爾值。另外,“無(wú)效性”值也可直接編碼” 1. 整數(shù)。當(dāng)以十進(jìn)制、十六進(jìn)制或八進(jìn)制方式使用整數(shù)時(shí),可對(duì)這類(lèi)整數(shù)進(jìn)行直接編碼。
編程序時(shí),十進(jìn)制的數(shù)字均不以0開(kāi)頭,只包含0~9的數(shù)值串;十六進(jìn)制的數(shù)據(jù)以O(shè)X或者Ox開(kāi)頭,只包含0~9、a~f或者A~F的字符串;八進(jìn)制的數(shù)均以0開(kāi)頭,只包含0~7的數(shù)字串。
2.浮點(diǎn)數(shù)。浮點(diǎn)數(shù)通常定義為含有小數(shù)點(diǎn)的數(shù)字,可以包含小數(shù)和指數(shù)部分。浮點(diǎn)數(shù)的形式較多,可以使十進(jìn)制的整數(shù)或浮點(diǎn)數(shù),可以是分?jǐn)?shù),也可以是指數(shù);但一個(gè)浮點(diǎn)數(shù)必須至少有一個(gè)數(shù)。
指數(shù)是以e或E開(kāi)頭,后面跟著一個(gè)整數(shù)。指數(shù)是以10為底冪。例如:e0時(shí)10的零次冪,例如:e0時(shí)10的另次冪,e-2時(shí)10的負(fù)2次冪集等于0.01。指數(shù)可以帶符號(hào),正好(+)或者減號(hào)(-),它們分別代表是正指數(shù)和負(fù)指數(shù)。
3.字符串。字符串是指定義在成對(duì)的雙引號(hào)("")或單引號(hào)(‘ ')之間的內(nèi)容。
由于WMLScript只允許使用成對(duì)的雙引號(hào)或但引號(hào)來(lái)定義字符串,所以程序中使用一個(gè)單引號(hào)或一個(gè)雙引號(hào)時(shí)就會(huì)出現(xiàn)編譯錯(cuò)誤。
考慮到有些特殊字符不能在字符串中直接顯現(xiàn)出來(lái),所以WMLScript提供了轉(zhuǎn)譯序列來(lái)表示這些特殊字符。
4.布爾型。它只是ture和false兩個(gè)數(shù)值,用于表示W(wǎng)MLScript中的“真值”或“假值”。布爾型數(shù)據(jù)可參與異、或等運(yùn)算,具體規(guī)則我們后面介紹。
5.無(wú)效型。也稱(chēng)為“空類(lèi)型”,它是WMLScript支持的一個(gè)表示無(wú)效值的量,以invalid表示。該兩與C語(yǔ)言中的NULL類(lèi)似。
4.保留字。WMLScript中定義有一個(gè)保留字集合,含有一些表示特殊意義的單詞這些次不能另外定義,也不能最為其他標(biāo)識(shí)符。WMLScript中的保留字如下:
acces http agent if break isvalid continue meta header
div name div= path domain return else typeof while
equiv url extern use for user function var
另外,WMLScript還為將來(lái)的版本預(yù)留了一些保留字,主要有:
case finally catch import class private const public debugger
sizeof default struct do super enum switch export throw
extends try
WMLScript還有一些沒(méi)有使用的保留字:
delete null in this lib void new with
7.標(biāo)識(shí)符。WMLScript的標(biāo)識(shí)符可以指定或命名3種元素:變量、函數(shù)和標(biāo)注。標(biāo)識(shí)符不能以數(shù)字開(kāi)頭,但能一段下劃線(-)開(kāi)頭,而且,標(biāo)識(shí)符不能是WMLScript的保留字。例如,timeOfDay、speed 、quality、HOME_ADDRESS、_myName、__、varO等都是合法的標(biāo)識(shí)符;而以數(shù)字或非短下劃線的特殊符號(hào)開(kāi)頭的字串,以及保留字等都屬于不合法的標(biāo)志賦,如while、for、if、my~name、$sys、123、3piecs、take.this等。
由于WMLScript是嚴(yán)格區(qū)分大小寫(xiě)的,所以字母相同但大小寫(xiě)不同的標(biāo)識(shí)符不是同一個(gè)標(biāo)識(shí),例如,Work和work就是不同的標(biāo)識(shí)符。
8.名稱(chēng)空間。WMLScript提供了比較自由的名稱(chēng)空間,同一標(biāo)識(shí)符可以同時(shí)用作不同的目的。例如,作為某一函數(shù)名稱(chēng)的標(biāo)識(shí)符,還可以同時(shí)用作變量名、函數(shù)參數(shù)、程序標(biāo)注等,使用時(shí)他們的屬性或值等并不相互影響。在下面的簡(jiǎn)單的例程中,myTest這一標(biāo)識(shí)符即用作了函數(shù)名,又用作了變量名、函數(shù)參數(shù)名、函數(shù)參數(shù)名、常量名。顯然,WMLScript的這一特定為我們編寫(xiě)程序提供了很大的方便。
相關(guān)文章
XPath的定義、基礎(chǔ)語(yǔ)法、使用示例和高級(jí)用法
XPath(XML Path Language)是一種用于在XML文檔中定位和選擇節(jié)點(diǎn)的語(yǔ)言,XPath的選擇功能非常強(qiáng)大,可以通過(guò)簡(jiǎn)單的路徑選擇語(yǔ)法,選取文檔中的任意節(jié)點(diǎn)或節(jié)點(diǎn)集,同樣也支持 HTML 元素的解析,本文介紹了XPath的定義、基礎(chǔ)語(yǔ)法、使用示例、高級(jí)用法、.NET中使用舉例等2023-12-12非常不錯(cuò)的WAP常見(jiàn)問(wèn)題問(wèn)答大全(二)
非常不錯(cuò)的WAP常見(jiàn)問(wèn)題問(wèn)答大全(二)...2007-03-03WAP建站W(wǎng)ML語(yǔ)言語(yǔ)法基礎(chǔ)教程
WAP建站W(wǎng)ML語(yǔ)言語(yǔ)法基礎(chǔ)教程...2007-03-03