文章詳情頁
WMLScript的語法基礎(chǔ)
瀏覽:576日期:2022-06-03 17:40:57
WMLScript是屬于無線應(yīng)用協(xié)議WAP應(yīng)用層的一部分,使用它可以向WML卡片組和卡片中添加客戶端的處理邏輯,目前最新的版本是1.1版。WMLScript 1.1是在歐洲計算機(jī)制造商協(xié)會制定的ECMAScript腳本語言的基礎(chǔ)上,經(jīng)過修改和優(yōu)化而制定的。它能夠更好地支持諸如移動電話類的窄帶寬通信設(shè)備,在WML編程中使用WMLScript可以有效地增強(qiáng)客戶端應(yīng)用的靈活性,而且,我們也以把WMLScript作為一個單獨(dú)的工具使用,開發(fā)出功能強(qiáng)大的WAP網(wǎng)絡(luò)應(yīng)用和無線網(wǎng)頁。本章我們將詳細(xì)講解WMLScript 1.1編程的基礎(chǔ)語法知識,如基本規(guī)則、變量與數(shù)據(jù)類型、操作符與表達(dá)式等。為了敘述上的簡便,以后我們將“WMLScript 1.1”簡稱為“WMLScript”。
7.1 簡單例子:WML程序中調(diào)用WMLScript函數(shù)
經(jīng)過前兩章的學(xué)習(xí),熟悉C語言的讀者可能會認(rèn)識到,WML的函數(shù)功能、邏輯運(yùn)算功能等都是十分有限的。而WMLScript提供了豐富的函數(shù)功能,我們在WAP應(yīng)用開發(fā)中可以使用WMLScript來增強(qiáng)WML編程,調(diào)用WMLScript語句和函數(shù)的命令可以直接寫在WML
7.3 WMLScript基本規(guī)則
WMLScript在許多基本規(guī)則方面沿用了WML的做法。不過,由于WMLScript是以C語言為藍(lán)本而制定的,所以它的語法特征和C語言非常相像。如果大家對C語言比較熟悉,那么學(xué)習(xí)和掌握這部分內(nèi)容應(yīng)當(dāng)是比較容易的。
7.3.1 WMLScript與URL
與WML一樣,WMLScript也沿用了WWW和HTML訪問資源的URL、HTTP等規(guī)范,并擴(kuò)大了URL使用的范圍。在WMLScript中,不僅超鏈接、文件路徑及文件名可以作為URL處理,外部函數(shù)、訪問控制信息等也可作為URL處理。
為此,WMLScript采用了WML的變通方法,即改進(jìn)HTML命名資源位置的方式,采用程序段錨點(diǎn)(Fragment Anchor)的形式來處理資源定位。程序段錨點(diǎn)根據(jù)文檔URL規(guī)則進(jìn)行定義,并按照程序段標(biāo)識符前加井字號(#)的方式書寫。使用程序段錨點(diǎn),WMLScript程序可以在WMLScript編譯單位內(nèi)定位任一指定的函數(shù),并可在調(diào)用該函數(shù)的同時傳遞所需的參數(shù)。
例如,WAP手機(jī)用戶通過瀏覽器調(diào)用外部WMLScript函數(shù)時,可先寫出該函數(shù)所在的URL地址,如http://www.acme.com/myScripts.scr;然后,將函數(shù)名及參數(shù)作為程序段錨點(diǎn)處理,比如testFunc("Test%20argument", -8),這樣最后含有程序段錨點(diǎn)的URL地址書寫格式為:http://www.acme.com/myScripts.scr#testFunc("Test%20argument", -8)。注意其中加上了井字號(#)。
瀏覽器接到這樣一個調(diào)用后,將首先執(zhí)行訪問控制檢查。如果調(diào)用者沒有訪問權(quán)限,則終止該函數(shù)的調(diào)用。否則,繼續(xù)執(zhí)行調(diào)用操作,將錨點(diǎn)中的函數(shù)名與編譯程序中的外部函數(shù)進(jìn)行匹配,如果不合適,則終止執(zhí)行;否則,就進(jìn)一步對函數(shù)參數(shù)的格式、個數(shù)、類型、參數(shù)值屬性等進(jìn)行判斷,如果符合要求,則函數(shù)調(diào)用成功,否則拒絕函數(shù)調(diào)用。
7.1 簡單例子:WML程序中調(diào)用WMLScript函數(shù)
經(jīng)過前兩章的學(xué)習(xí),熟悉C語言的讀者可能會認(rèn)識到,WML的函數(shù)功能、邏輯運(yùn)算功能等都是十分有限的。而WMLScript提供了豐富的函數(shù)功能,我們在WAP應(yīng)用開發(fā)中可以使用WMLScript來增強(qiáng)WML編程,調(diào)用WMLScript語句和函數(shù)的命令可以直接寫在WML
7.3 WMLScript基本規(guī)則
WMLScript在許多基本規(guī)則方面沿用了WML的做法。不過,由于WMLScript是以C語言為藍(lán)本而制定的,所以它的語法特征和C語言非常相像。如果大家對C語言比較熟悉,那么學(xué)習(xí)和掌握這部分內(nèi)容應(yīng)當(dāng)是比較容易的。
7.3.1 WMLScript與URL
與WML一樣,WMLScript也沿用了WWW和HTML訪問資源的URL、HTTP等規(guī)范,并擴(kuò)大了URL使用的范圍。在WMLScript中,不僅超鏈接、文件路徑及文件名可以作為URL處理,外部函數(shù)、訪問控制信息等也可作為URL處理。
為此,WMLScript采用了WML的變通方法,即改進(jìn)HTML命名資源位置的方式,采用程序段錨點(diǎn)(Fragment Anchor)的形式來處理資源定位。程序段錨點(diǎn)根據(jù)文檔URL規(guī)則進(jìn)行定義,并按照程序段標(biāo)識符前加井字號(#)的方式書寫。使用程序段錨點(diǎn),WMLScript程序可以在WMLScript編譯單位內(nèi)定位任一指定的函數(shù),并可在調(diào)用該函數(shù)的同時傳遞所需的參數(shù)。
例如,WAP手機(jī)用戶通過瀏覽器調(diào)用外部WMLScript函數(shù)時,可先寫出該函數(shù)所在的URL地址,如http://www.acme.com/myScripts.scr;然后,將函數(shù)名及參數(shù)作為程序段錨點(diǎn)處理,比如testFunc("Test%20argument", -8),這樣最后含有程序段錨點(diǎn)的URL地址書寫格式為:http://www.acme.com/myScripts.scr#testFunc("Test%20argument", -8)。注意其中加上了井字號(#)。
瀏覽器接到這樣一個調(diào)用后,將首先執(zhí)行訪問控制檢查。如果調(diào)用者沒有訪問權(quán)限,則終止該函數(shù)的調(diào)用。否則,繼續(xù)執(zhí)行調(diào)用操作,將錨點(diǎn)中的函數(shù)名與編譯程序中的外部函數(shù)進(jìn)行匹配,如果不合適,則終止執(zhí)行;否則,就進(jìn)一步對函數(shù)參數(shù)的格式、個數(shù)、類型、參數(shù)值屬性等進(jìn)行判斷,如果符合要求,則函數(shù)調(diào)用成功,否則拒絕函數(shù)調(diào)用。
標(biāo)簽:
XML/RSS
相關(guān)文章:
1. 編程語言PHP在Web開發(fā)領(lǐng)域的優(yōu)勢在哪?2. 解決Android studio xml界面無法預(yù)覽問題3. Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁效果(實(shí)例代碼)4. 基于android studio的layout的xml文件的創(chuàng)建方式5. Android如何加載Base64編碼格式圖片6. 什么是python的自省7. 詳解Android studio 動態(tài)fragment的用法8. 圖文詳解vue中proto文件的函數(shù)調(diào)用9. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟10. 在IDEA中實(shí)現(xiàn)同時運(yùn)行2個相同的java程序
排行榜

網(wǎng)公網(wǎng)安備