熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

減輕JavaScript測試和調試負擔

2013-11-15 11:38:50  來源: JSP教程 

像JSPASPNETColdFusion這樣的Web開發平台提供了大量強大服務器端開發選項但是它們並沒有否定用JavaScript進行客戶端的Web開發
JavaScript同時提供了邏輯和用戶接口功能減輕了服務器端處理的負載盡管我們已經使用它有多年了但是它的開發工具還是有點落後現在就讓我們仔細看看JavaScript的開發和調試選項
開發工具
如果你習慣使用諸如Visual Studio或者NetBeans這樣的集成開發環境(IDE)那麼你就一定很熟悉各種調試選項包括代碼單步調試設置斷點以及監視變量等在監視代碼執行或者追蹤錯誤時這些都是不可或缺的工具不幸的是這些工具在JavaScript開發人員中並不是十分普及
調試
應用程序開發中的一個重要步驟是追蹤腳本或者代碼中的錯誤這包括隔離代碼段一行一行地分析它們在使用JavaScript的時候你可以使用在開發工具大發展之前用過的方法
在這種情況下最常用的一種JavaScript函數是警報信息框你可以用它來檢查保存在變量/對象裡的值並與循環一起使用來查看對象的內容
舉個例子列表A裡的HTML代碼沒有按照預期的效果執行<html><head>
<title>JS Test</title>
<script language=JavaScript>
function validate() {
var doc = documentforms[];
var flag = true;
if (docfullNamevalue = )
flag = false;
if (ntactNumbervalue = )
flag = false;
if (flag) docsubmit()
else alert(Enter values before submitting);
}
</script></head>
<body>
<form id=frmTest>
Name: <input name=fullName type=text /><br />
Address: <input name=contactNumber type=text /><br />
<input type=button value=Submit onclick=validate(); />
</form></body></html>
按理說它會在表單被真的提交之前驗證在兩個文本字段裡輸入的值
這個表單總是不管輸入的值是什麼就被提交所以我們可以使用警報語句在腳本執行期間檢查值的內容列表B裡的腳本就使用了警報語句來監視變量的值
<html><head>
<title>JS Test</title>
<script language=JavaScript>
function validate() {
var doc = documentforms[];
var flag = true;
alert(Script starting flag = + flag);
alert(Script starting Full name = + docfullNamevalue);
alert(Script starting Contact number = + ntactNumbervalue);
if (docfullNamevalue = ) {
alert(First check Full Name is empty);
flag = false;
}
if (ntactNumbervalue = ) {
alert(Second check Contact Number is empty);
flag = false;
}
if (flag) {
alert(Validation successful document will be submitted);
docsubmit()
} else {
alert(Enter values before submitting);
} }
</script></head>
<body><form id=frmTest>
Name: <input name=fullName type=text /><br />
Address: <input name=contactNumber type=text /><br />
<input type=button value=Submit onclick=validate(); />
</form></body></html>
果你執行這段腳本很明顯if語句總是為如果更加仔細地看一看你會注意到這裡使用的是分配操作(=)而不是等於(==)經過這兩個改變腳本就會按預期的結果執行了
這個錯誤很常見尤其是當開發人員在諸如VBNET和其他句法上存在差異的語言之間輪流轉換時我們現在快速浏覽更多幾個常見的錯誤
JavaScript對大小寫敏感所以變量名JavaScript語句以及類似的內容必須使用正確的格式/大小寫所以要按照統一的方式給你的對象變量和函數命名
在代碼中使用逗號除了for語句外JavaScript把逗號用作變量的分隔符
JavaScript要用大括號來定義一段語句
字符串必須放在引號(單引號或者雙引號)之間
用alert函數進行調試對於開發人員來說很常見但是現在有很多其他的選項來監視腳本包括浏覽器和IDE
雖然Internet Explorer是最流行的浏覽器但是它對JavaScript調試的支持還顯得相當初級如果發生JavaScript錯誤會有一個錯誤(信息)窗口顯示(大多數JavaScript錯誤的)錯誤消息還遠不能讓人滿意但是它們至少能夠讓你知道發生了什麼錯誤這些消息包括一個行號(盡管它從來都沒有與真正的錯誤行相對應但是它確實讓你離錯誤行比較近了)
此外它還能夠調用外部應用程序進行調試(比如Visual Studio如果安裝了的話)或者檢查代碼注意你可以從工具|選項(Tools | Options)裡啟動JavaScript的調試功能
基於Mozilla的浏覽器也提供了選擇的機會Firefox帶有一個JavaScript控制台用來顯示當前頁面上腳本的(錯誤警告信息等)消息它會明確地顯示發生錯誤的代碼並用箭頭指示哪裡出現了錯誤
Netscape和Opera也帶有JavaScript控制台有些浏覽器還有用於調試的專用句法一個典型的例子是Opera它支持將輸出送到控制台的operapostError()命令Safari浏覽器的調試(Debug)菜單讓你可以啟動JavaScript錯誤的記錄這樣它們就會出現在控制台裡
IDE選項
你還可以通過自己習慣的IDE調試基於浏覽器的應用程序Visual Studio就是這樣一個例子它能夠讓你通過它調試Internet Explorer應用程序你必須在Web服務器(IIS)啟動調試功能這要按照下面的步驟進行
在調試模式(Debug|Start)啟動Web應用程序
應用程序在一個浏覽器窗口裡啟動返回到Visual Studio客戶端選擇調試|窗口|運行文檔(Debug | Window | Running Documents)
當前運行的應用程序會出現在運行文檔窗口裡你可以選擇Web窗體在JavaScript代碼裡設置斷點
返回Web窗體使用應用程序執行會在插入的任何JavaScript斷點處停止
Visual Studio不是唯一支持調試的IDE例如Dreamweaver有它自己的JavaScript調試器讓你調試句法和邏輯錯誤設置斷點監視變量進行代碼單步調試它的一個非常好的特性是會用簡單幾句話解釋JavaScript的錯誤
你還可以使用單獨的JavaScript調試工具一個典型的例子是SplineTech的JavaScript HTML Debugger它是一個功能完備的開發工具如果你使用Eclipse IDE那麼JSEclipse就是Eclipse的一個用於JavaScript開發的插件
 
用於調試的其他語言
JavaScript已經發展成為進行Web客戶端編程的標准語言它有大量的語言資源但是對開發的支持並不完備大多數使用JavaScript的開發人員更傾向於用原來的方法進行調試但是現在有很多工具來減輕測試和調試的負擔
 
Tony Patton的職業生涯始於應用程序開發員現已獲得JavaVBLotus和XML認證證書
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19360.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.