JScript
Developer | Microsoft |
---|---|
First appeared | 1996 |
Stable release |
9.0
/ March 2011 |
Typing discipline | Dynamic, weak, duck |
OS | Microsoft Windows |
Filename extensions | .js, .jse, .wsf, .wsc (.htm, .html, .asp)[1] |
Website |
msdn |
Major implementations | |
Active Scripting, JScript .NET |
JScript is Microsoft's dialect of the ECMAScript standard[2] that is used in Microsoft's Internet Explorer.
JScript is implemented as an Active Scripting engine. This means that it can be "plugged in" to OLE Automation applications that support Active Scripting, such as Internet Explorer, Active Server Pages, and Windows Script Host.[3] It also means such applications can use multiple Active Scripting languages, e.g., JScript, VBScript or PerlScript.
JScript was first supported in the Internet Explorer 3.0 browser released in August 1996. Its most recent version is JScript 9.0, included in Internet Explorer 9.
JScript 10.0[4] is a separate dialect, also known as JScript .NET, which adds several new features from the abandoned fourth edition of the ECMAScript standard. It must be compiled for .NET Framework version 2 or version 4, but static type annotations are optional.
Comparison to JavaScript
As explained by JavaScript guru Douglas Crockford in his talk titled The JavaScript Programming Language on YUI Theater,
[Microsoft] did not want to deal with Sun Microsystems about the trademark issue, and so they called their implementation JScript. A lot of people think that JScript and JavaScript are different but similar languages. That's not the case. They are just different names for the same language, and the reason the names are different was to get around trademark issues.[5]
However, JScript supports conditional compilation, which allows a programmer to selectively execute code within block comments. This is an extension to the ECMAScript standard that is not supported in other JavaScript implementations, thus making the above statement not completely true.
Versions
JScript
The original JScript is an Active Scripting engine. Like other Active Scripting languages, it is built on the COM/OLE Automation platform and provides scripting capabilities to host applications.
This is the version used when hosting JScript inside a Web page displayed by Internet Explorer, in an HTML application, in classic ASP, in Windows Script Host scripts and several other Automation environments.
JScript is sometimes referred to as "classic JScript" or "Active Scripting JScript" to differentiate it from newer .NET-based versions.
Some versions of JScript are available for multiple versions of Internet Explorer and Windows. For example, JScript 5.7 was introduced with Internet Explorer 7.0 and is also installed for Internet Explorer 6.0 with Windows XP Service Pack 3, while JScript 5.8 was introduced with Internet Explorer 8.0 and is also installed with Internet Explorer 6.0 on Windows Mobile 6.5.
Microsoft's implementation of ECMAScript 5th Edition in Windows 8 Consumer Preview is called JavaScript and the corresponding Visual Studio 11 Express Beta includes a “completely new”, full-featured JavaScript editor with IntelliSense enhancements for HTML5 and ECMAScript 5 syntax, “VSDOC” annotations for multiple overloads, simplified DOM configuration, brace matching, collapsible outlining and “go to definition”.[6]
Version | Date | Introduced with[7] | Based on[note 1] | Similar JavaScript version |
---|---|---|---|---|
1.0 | Aug 1996 | Internet Explorer 3.0 | Netscape JavaScript | 1.0 |
2.0 | Jan 1997 | Windows IIS 3.0 | Netscape JavaScript | 1.1 |
3.0 | Oct 1997 | Internet Explorer 4.0 | ECMA-262 1st edition[note 2] | 1.3 |
4.0 | Visual Studio 6.0 (as part of Visual InterDev) | ECMA-262 1st edition | 1.3 | |
5.0 | Mar 1999 | Internet Explorer 5.0 | ECMA-262 2nd edition | 1.4 |
5.1 | Internet Explorer 5.01 | ECMA-262 2nd edition | 1.4 | |
5.5 | Jul 2000 | Internet Explorer 5.5 & Windows CE 4.2 | ECMA-262 3rd edition | 1.5 |
5.6 | Oct 2001 | Internet Explorer 6.0 & Windows CE 5.0 | ECMA-262 3rd edition | 1.5 |
5.7 | Nov 2006 | Internet Explorer 7.0 | ECMA-262 3rd edition + ECMA-327 (ES-CP)[note 3] | 1.5 |
5.8 | Mar 2009 | Internet Explorer 8.0 & Internet Explorer Mobile 6.0 | ECMA-262 3rd edition + ECMA-327 (ES-CP) + JSON (RFC 4627)3 | 1.5 |
9.0 | Mar 2011 | Internet Explorer 9.0 (64-bit) | ECMA-262 5th edition | 1.8.1 |
JScript is also available on Windows CE (included in Windows Mobile, optional in Windows Embedded CE). The Windows CE version lacks Active Debugging.
JScript .NET
JScript .NET is a Microsoft .NET implementation of JScript. It is a CLS language and thus inherits very powerful features, but lacks many features of the original JScript language, making it inappropriate for many scripting scenarios. JScript .NET can be used for ASP.NET pages and for complete .NET applications, but the lack of support for this language in Microsoft Visual Studio places it more as an upgrade path for classic ASP using classic JScript than as a new first-class language.
Version | Platform | Date | Introduced with | Based on |
---|---|---|---|---|
7.0 | Desktop CLR 1.0 | 2002-01-05 | Microsoft .NET Framework 1.0 | ECMA-262 3rd edition[note 4] |
7.1 | Desktop CLR 1.1 | 2003-04-01 | Microsoft .NET Framework 1.1 | ECMA-262 3rd edition[note 4] |
8.0 | Desktop CLR 2.0 | 2005-11-07 | Microsoft .NET Framework 2.0 | ECMA-262 3rd edition[note 4] |
10.0 | Desktop CLR 4.0 | 2010-08-03 | Microsoft .NET Framework 4.0 | ECMA-262 3rd edition[note 4] |
JScript .NET is not supported in the .NET Compact Framework.
Note: JScript .NET versions are not related to classic JScript versions. JScript .NET is a separate product. Even though JScript .NET is not supported within the Visual Studio IDE, its versions are in sync with other .NET languages versions (C#, VB.NET, VC++) that follow their corresponding Visual Studio versions.
.NET Framework 3.0 and 3.5 are built on top of 2.0 and do not include the newer JScript.NET release (version 10.0 for .NET Framework 4.0).
(Source: file version of jsc.exe JScript.NET compiler and Microsoft.JScript.dll installed with .NET Framework)
See also
Notes
- ↑ JScript supports various features not specified in the ECMA standard,[8] as does JavaScript.
- ↑ Microsoft said JScript 3.0 was "the first scripting language to fully conform to the ECMA-262 standard".[9]
- ↑ JScript 5.7 includes an implementation of the ECMAScript Compact Profile (ECMA-327) which turns off features not required by the ES-CP when using the "JScript.Compact" ProgID.
- 1 2 3 4 JScript .NET is "being developed in conjunction with ECMAScript Edition 4".[10]
References
- ↑ "Types of Script Files". Msdn.microsoft.com. Retrieved 2012-08-17.
- ↑ "JScript (ECMAScript3)". Msdn.microsoft.com. Retrieved 2012-08-17.
- ↑ "What Is WSH?". Msdn.microsoft.com. Retrieved 2012-08-17.
- ↑ What is JScript 10.0?
- ↑ Douglas Crockford, The JavaScript Programming Language
- ↑ "What's New in ASP.NET 4.5 and Visual Web Developer 11 Beta: The Official Microsoft ASP.NET Site".
"What's New for ASP.NET 4.5 and Web Development in Visual Studio 11 Beta". - ↑ Version Information (Windows Scripting - JScript), Microsoft, retrieved 2010-05-31
- ↑ Microsoft JScript Features - Non-ECMA (Windows Scripting - JScript), Microsoft, retrieved 2010-05-31
- ↑ Microsoft Embraces ECMA Internet Scripting Standard; Delivers Industry's First ECMA-Compliant Scripting Language, JScript 3.0, In Key Microsoft Products, Microsoft, 1997-06-30
- ↑ What Is JScript .NET?, Microsoft
External links
Wikibooks has a book on the topic of: Computer Programming/Hello world |
- JScript documentation in the MSDN Library
- JScript 5.7 Release Notes
- JScript .NET documentation in the MSDN Library
- JScript blog
- JavaScript - JScript - ECMAScript version history
- jPaq - A Fully Customizable JScript Library