Choosing a Scripting Language: JavaScript vs. VBScript
As mentioned, the Dynamic HTML object model is language neutral and can
be scripted in any available programming language. Therefore, the choice of
language depends on the preference of the Web author and the intended
audience for the page.
There are currently two primary languages for scripting pages on the
Web: JavaScript and VBScript. A committee of the ECMA (European Computer
Manufacturers Association), with representatives from Netscape, Microsoft, and
other vendors, has approved a standardization of the JavaScript language.
Microsoft's JScript implementation in Internet Explorer 4.0 is fully compliant with the
new standard.
For creating Web pages on the Internet for which maximum exposure is
necessary, JavaScript provides the most potential, as it is currently supported by
both Netscape's and Microsoft's browsers. (This also assumes that your code is
targeting the set of features shared across the different implementations.) In addition,
the syntax for controlling program flow in JavaScript is very similar to the syntax
in Java and C++, languages familiar to many Web authors.
Although both Microsoft and Netscape support JavaScript, the companies
are at different stages of implementing the features in Dynamic HTML. Therefore,
if you want cross-browser interoperability, exercise caution when you are
authoring dynamic pages. Throughout this book, techniques will be offered to help you
construct intelligent and interoperable pages.
For intranets in which only one type of browser is used, the scripting
language becomes a secondary issue. In this case, the language choice should be based on
what browser is the standard for the company and what knowledge
the Web developers have. If the Web development staff is widely versed in
Microsoft Visual Basic, and Microsoft Internet Explorer is the browser of choice, it may be cheaper to
develop in VBScript than to retrain and use JavaScript.
This Book Uses JavaScript
This book separates the concept of the object model from the programming
language. However, without a programming language Dynamic HTML would need to
be presented very abstractly, so for the sake of clarity this book uses the
JavaScript language for all examples.
Certain JavaScript objects are not a part of the Dynamic HTML object
model and are specific to the language. For example, the date, math, number, and other
data types are all specific to the language. It is up to the language implementation
to expose compatible data types. For example, VBScript exposes a string data
type, but in VBScript the string is not an object with its own interface. Instead,
string manipulations are performed separately using functions. The following code
compares a string manipulation of the title property using VBScript and JavaScript:
<!-- Simple comparison between VBScript and JavaScript
string functions -->
<SCRIPT LANGUAGE="VBScript">
dim s ` Declare the string variable.
s = document.title ` Initialize.
msgBox(len(s)) ` Output the length of s.
msgBox(left(s, 1)) ` Output the first character of s.
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
var s = document.title; // Can initialize at declaration time.
alert(s.length); // Output the length of s.
alert(s.charAt(0)); // Output the first character of s.
</SCRIPT>
[Содержание]
|