国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

使用VBScript和JScript編寫WEB應用程序(一) 拙作一片,湊或者看吧:-(

2024-07-21 02:15:37
字體:
來源:轉載
供稿:網友
使用vbscript和jscript編寫web應用程序

我心飛揚

寫這篇文章的動機是看到了大家對vbscript和javascript的討論以及另一片類似的文章,覺得有必要將大家的想法加以整理:-),并將我在工作中產生的一些心得拿出來和大家分享,希望對大家有所幫助。當然,水平有限,錯誤在所難免。


active server pages是microsoft windows dna的重要組成部分,使用asp我們可以很容易的構造功能強大的基于web的應用。有很多腳本編寫語言可供我們進行asp創作,如:vbscript、javascript、perl 和rexx等,你可以從幾種腳本編寫語言中選擇一個。本文中我們討論微軟公司所提供的兩種腳本編寫語言:
vbscript
jscript

首先,我想討論的是:

一、什么時候使用vbscript 和jscript,以及兩者之間的區別

vbscript 是visual basic的子集,全稱是microsoft visual basic scripting edition。如果你曾經用過visual basic或者是visual basic for applications (vba),你就會覺得非常熟悉。不過它們并不完全一樣,因為vbscript是特意為在web中進行工作而設計的。

jscript是ecmascript的microsoft版本,是一組包括jscript 和javascript腳本編寫語言的標準定義。jscript從一組編程語言如c, c++, 以及java等之中脫離出來的。如果你以前曾經用過c或者是java,那么jscript的結構你會覺得非常熟悉。即便你不知道這些語言也沒有關系,jscript的結構一點也不難,它像c和java一樣方便而沒有它們那么復雜。

微軟公司在internet explorer和internet information server (iis)中為它們提供了activex scripting language(activex腳本編輯語言)引擎(比如vbscript.dll、jscript.dll)。

那么,什么時候選擇何種語言?
我們知道,進行asp開發無外乎要編寫下列兩種腳本之一:

1)服務器腳本:
在asp頁面中為iis編寫服務器腳本,無論使用那種語言都沒有問題。并且微軟公司的visual interdev對它們支持的都很好。

2)客戶端腳本:
如果你想在瀏覽器腳本中使用vbscript,那么瀏覽器必須是internet explorer的某個版本。因為其他瀏覽器可能不支持vbscript。如果要建立一個公共web站點,你無法預知用戶使用的是什么瀏覽器,那么vbscript只能用于internet explorer這個限制就成問題了。
幾乎所有允許編寫腳本的瀏覽器都支持jscript。因此,如果為一個公共web站點編寫應用程序,用jscript來編寫客戶端腳本是很自然的選擇。

影響你做決定的其他主要因素還有:

1、錯誤控制
在vbscript中有on error 錯誤陷阱來對錯誤情況進行控制,如:on error resume next。如果你編寫的是服務器腳本,錯誤控制非常重要,因為腳本的運行是無人照顧的。jscript沒有這種機制。

2、格式化
vbscript有這樣的功能,能夠輕易地把數據,數字和貨幣數據格式化。jscript沒有這樣的功能。

3、動態執行
jscript一個非常有力的特性是:它允許你在你的腳本內動態地建立和執行腳本(eval()函數、execscript()方法等)。簡而言之,在你的腳本中能夠編寫腳本。當你用dhtml進行工作時,這個特性是非常有用的,因為這樣你就能夠動態的操作dhtml的文檔模型了。vbscript無此功能。例如,在客戶端的javascript里你可以使用類似這樣的句法:

execscript("on error resume next:object.execwb 4, 1","vbscript");

4、面向對象
jscript使用的是一種基于原型的對象結構,允許你在腳本中定義對象。你能夠往對象的原型中加入方法和屬性,擴展內置對象和定制對象。例如:

//自定義對象myobject
function myobject(){
    //自定義屬性
    this.properties1=value;  //此時賦值為該屬性的默認值
    this.properties2;
    ...
    //自定義方法
    this.mymethod1=method1;
    this.mymethod2=method2;
}

function method1(arg){
    //block;
}

function method2(arg){
    //block;
}

尤其有用的是該對象可通過som傳回客戶端,使得asp編程方式更象以往的c/s結構。(我近期內可能會寫一篇深入討論som的文章,對該方法作詳細討論)

5、事件控制
用vbscript在internet explorer中控制事件很方便,就像在visual basic中一樣。在vbscript中也能夠建立一個隱含的事件處理程序,這只需要用對象事件結構形式來定義一項功能就行了,比如說隱式調用button1_onclick。不過在internet explorer中,jscript沒有這項功能(但在其他的jscript主機上支持這項功能)。
在internet explorer 中使用jscript控制事件,會要求你鏈接到一個對象上,而這個對象又是與事件處理程序相連的。通常,只要在鑒別事件并且有處理程序功能的對象的標簽欄中指明其屬性即可。如下所示:

<script id=clienteventhandlersjs language=javascript>
<!--

function button1_onclick() {
    alert("button1 clicked")
}

//-->
</script>
<input type="button" value="button" id=button1 name=button1 language=javascript onclick="return button1_onclick()">

或者使用類似下面的語法:
<script id=clienteventhandlersjs language=javascript>
<!--
function window_onload() {
    //block;    
}
//-->
</script>
<script language=javascript for=window event=onload>
<!--
window_onload()
//-->
</script>

值得注意的是,上例中language屬性設置為“javascript”。internet explorer對于"jscript" 和"javascript"這兩個名字都認識,但許多其他瀏覽器卻只認識"javascript",不認識"jscript" 。因此,為了保險起見,如果你不能確定該網頁是用internet explorer來瀏覽,就最好用"javascript"。

(未完待續)
我心飛揚

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗田县| 岢岚县| 河南省| 本溪市| 民乐县| 勐海县| 福海县| 泸州市| 岢岚县| 平谷区| 锡林浩特市| 长白| 鸡西市| 汤原县| 墨玉县| 泾源县| 中宁县| 宁波市| 琼结县| 射洪县| 墨竹工卡县| 沾化县| 会宁县| 黎平县| 邵武市| 青海省| 十堰市| 钦州市| 顺义区| 华阴市| 蓬溪县| 武汉市| 松溪县| 葵青区| 梁平县| 和顺县| 临澧县| 济南市| 湟中县| 鞍山市| 宽城|