用JavaScript(JScript)寫ASP程式(build asp with server-side javascript)的優缺點及經驗總結。
“謀劃”了很長時間,整理學習了很多代碼。只是想到哪兒寫到哪兒,不斷更新;歡迎有過此類編程經驗的同仁們斧正,感激不盡。
優點總結:
1、C風格的文法 {},親切、陶醉。
2、";"的使用,可以在最終發布時壓縮代碼。
3、三目運算子 ? : ,當然VBS中也可以摹擬出一個象VB中的IIf(expression, truepart, falsepart)式的函數
4、基於prototype的繼承、使其能構造出javascript式的類
5、一維數組操作比VBS強,提供了大量的方法,但是沒有二維數組的概念,可以摹擬
6、預設(optional)參數,這一點非常爽。
7、try {} catch(e){}finally{}錯誤捕捉要比on error resume next 好很多。
8、學慣用JavaScript與asp代碼有助於將來學習JSP。
9、
缺點總結(也就是VBS的優點):
1、JavaScript沒有二進位的處理方法,這樣就缺少了如產生驗證碼、無組件上傳等操作功能,當然可以用COM組件或混用指令碼來實現。
2、可以用VB來做VBS的編輯器,非常不錯,javascript編輯器目前我見過最強的就是Eclipse + jseclipse外掛程式了。
3、VBS提供了豐富的日期和格式化函數
4、和COM+結合沒有VBS好
5、
經驗總結
1、ASP並不是一種語言,寫ASP的伺服器端語言有很多種,預設的是VBScript、還有JavaScript,甚至perl script,phython等
2、這裡所說的JavaScript是指標準的W3C標準化了的ECMAScript,其實在服務端無論聲明指令碼語言是JavaScript還是JScript,系統都會調用JScript引擎來解釋指令碼,也就是說<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>和<%@LANGUAGE="JSCRIPT" CODEPAGE="65001"%>效果是一樣的。
3、JScript除了提供W3C標準化了的對象外,還提供了Enumerator 對象、VBArray 對象來完成JS中遍曆(VBS中用for each)集合和從COM組件中返回的VBArray的問題。
4、目前國內的JS(ASP)程式非常少,我拜讀過代碼的有
www.ccopus.com的COCOON系列作品
SIC的LBS2(Blog)程式
JsWIKI (http://www.nirvanastudio.org/ or http://sourceforge.net/projects/jswiki)
待續......