减轻JavaScript测试和调试负担

发表于:2008-10-24来源:作者:点击数: 标签:调试JavaScriptJavascriptjavascript负担
关键字:JavaScript 测试 像JSP、ASP.NET、ColdFusion这样的Web 开发 平台提供了大量强大 服务器 端开发选项。但是,它们并没有否定用JavaScript进行客户端的Web开发。 JavaScript同时提供了逻辑和用户接口功能,减轻了服务器端处理的负载。尽管我们已经使用
关键字:JavaScript 测试
 

  像JSP、ASP.NET、ColdFusion这样的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 = document.forms[0];
var flag = true;
if (doc.fullName.value = '')
flag = false;
if (doc.contactNumber.value = '')
flag = false;
if (flag) doc.submit()
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 = document.forms[0];
var flag = true;
alert('Script starting, flag = ' + flag);
alert('Script starting, Full name = ' + doc.fullName.value);
alert('Script starting, Contact number = ' + doc.contactNumber.value);
if (doc.fullName.value = '') {
alert('First check, Full Name is empty.');
flag = false;
}
if (doc.contactNumber.value = '') {
alert('Second check, Contact Number is empty.');
flag = false;
}
if (flag) {
alert('Validation successful, document will be submitted.');
doc.submit()
} 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>

 

原文转自:http://www.ltesting.net