在 Web 网页上使用VBScript 和JScript

**综述:**本文讨论了 VBScript 和 JScript 之间的区别,以及它们的使用场合。本文还讨论了:

  • Visual InterDev 中的 VBScript 和 JScript

  • 内联服务器脚本和<Script>单元

  • 脚本执行顺序

如果你要编写一个 Web 网页就必须要编写一些脚本。幸运的是,你可以从几种脚本编写语言中选择一个。不幸的是,有这么多种语言可以选择,到底选哪一种呢?你应该怎么做?

或者,如果你获得了一个网页,它的脚本是用一种你不怎么使用的脚本语言编写的, 你怎样才能够用这个脚本来增加一些新的功能呢?

在本文中,我将会讨论到这些问题。而首先,我会指导你如何用微软公司所提供的这两种脚本编写语言来进行工作。

Microsoft® Visual Basic®, Scripting Edition (VBScript).

JScript®,它是 ECMAScript 的 Microsoft 版本,是一组包括 JScript 和 JavaScript 脚本编写语言的标准定义。

当然,还有其他的脚本编写语言,如 Perl 和 Rexx 等。不过这里我着重介绍两种语言, 微软公司在 Internet Explorer 和 Internet Information Server (IIS)中为它们提供了ActiveX® Scripting Language(ActiveX 脚本编辑语言)引擎。

我还要讨论你何时需要在同一个网页中使用这两种语言(如你所见,这是完全可行的)。

为了对你有所帮助,我列出了一系列有关的小问题,这些问题在你工作时必须牢记于心。为了清楚地论述这个问题,我将从以下几个方面着手:

  • VBScript 和 JScript 之间的区别

  • 如何在 Visual InterDev 中确定脚本语言?

  • 在同一个网页中应用两种语言

  • 更新脚本编辑语言

  • VBScript 和 JScript 之间的区别

VBScript 和 JScript 之间最大的区别是它们的结构。VBScript 是 Visual Basic 的子集,如果你曾经用过 Visual Basic 或者是 Visual Basic for Applications (VBA),你就会觉得非常熟悉。不过它们并不是完全一样的,因为 VBScript 是特意为在浏览器中进行工作而设计的,它不包括一些在脚本这个范围以外的特性,如文件访问和打印等等。

而另一方面,JScript 从一组编程语言如 C, C++, 以及 Java 等之中脱离出来的。如果你以前曾经用过 C 或者是 Java,那么 JScript 的结构你会觉得非常熟悉。即便你不知道这些语言也没有关系,JScript 的结构一点也不难——它像 C 和 Java 一样方便而没有它们那么复杂。

注意:不管怎样,JScript 和 Java 是完全不同的两种语言。Java 是一种对于网页应用程序和非网页应用程序都可以使用的完全成熟的开发语言。而 JScript 是一种主要用于脚本编写的脚本语言。

JScript 和 VBScript 的任务是相同的——都是让你能够编写自己的 Web 网页。每种语言都支持一些别的语言不支持的特性,不过,这些差异还不足以自动划分两种语言的使用范围。

更有可能的是,你会基于一些其他因素来选择脚本语言,最大的原因也是最实际的原因:你将要使用的平台能够支持你所选择的语言吗?你编写的是客户端还是服务器?如果是服务器,你的用户会使用什么浏览器和服务器软件?

下面的文章中会详细介绍这两种脚本编写语言,并且会就在特殊的环境中选择什么样的脚本语言给出一点指导意见。

什么时候选择 VBScript?

VBScript 主要是用在微软公司的各种平台上。因此如果你想用 VBScript 来进行编写, 你必须要使用下列几种脚本之一:

服务器脚本。如果你想要用 VBScript 来编写服务器脚本(如在 ASP 网页中),这个服务器必须是 Microsoft Internet Information Server (IIS)或者是其他的服务器。

客户端脚本。如果你想在浏览器脚本中用到 VBScript,这个浏览器必须是 Internet Explorer 的一个版本。因为其他流行的浏览器可能不支持 VBScript。

如果你使用的是 Visual InterDev,那么你应该已经在使用 IIS 了(或是其他相同的服务器),因而用 VBScript 来编写服务器脚本不是问题。如果你使用的不是 IIS,你要搞清楚该服务器是不是能够支持 VBScript。

然而,如果你要建立的是一个公共 Web 站点,你无法控制其他人使用的浏览器,那么Internet Explorer 只能用于客户端脚本这个限制就成问题了。不过,如果你是在浏览器已知的情况下用 VBScript 编写客户端脚本,这还是可行的。

如果你的目标平台能够支持 VBScript,考虑一下下列因素再决定是否用 VBScript 来编写脚本:

错误控制。在 VBScript 中有 On Error Resume Next 来对特殊情况给出说明。如果你编写的是服务器脚本,错误控制是非常重要的,因为脚本的运行是无人照顾的。

格式化。VBScript 有这样的功能,能够轻易地把数据,数字和货币数据格式化。

在 Internet Explorer 中事件控制很方便,就像在 Visual Basic 中一样。在 VBScript 中也能够建立一个隐含的事件处理程序,这只需要用对象 事件结构形式来定义一项功能就行了,比如说 Button1_onclick。不过在 Internet Explorer 中,JScript 没有这项功能(但在其他的 JScript 主机上支持这项功能)。