JScript

From Seo Wiki - Search Engine Optimization and Programming Languages
Jump to navigationJump to search

JScript is the Microsoft dialect of ECMAScript, which is the standardized version of JavaScript.

JScript is implemented as a Windows Script engine.[1] JScript was first supported in Internet Explorer 3.0 browser released in August 1996. The typical file extension of JScript source code files is .js.

The most recent version of JScript is JScript .NET, which is based on the yet-unfinished edition 4 of the ECMAScript standard, and can be compiled for the Microsoft .NET platform. JScript.NET adds several new features to ECMAScript ed. 3, such as optional static type annotations.

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.

Version Date Introduced with[2] Based on1 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 edition2 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)3 1.5
5.8 Mar 2009 Internet Explorer 8.0 ECMA-262 3rd edition + ECMA-327 (ES-CP) + JSON (RFC 4627)3 1.5

Note (1): JScript supports various features not specified in the ECMA standard[3], as does JavaScript.

Note (2): Microsoft said JScript 3.0 was "the first scripting language to fully conform to the ECMA-262 standard" (Source: Microsoft PressPass)

Note (3): 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.

JScript is also available on Windows CE (included in Windows Mobile, optional in Windows Embedded CE). The Windows CE version lacks Active Debugging.

(Source: MSDN, WebmasterWorld Forum)

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 place 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 edition4
7.1 Desktop CLR 1.1 2003-04-01 Microsoft .NET Framework 1.1 ECMA-262 3rd edition4
8.0 Desktop CLR 2.0 2005-11-07 Microsoft .NET Framework 2.0 ECMA-262 3rd edition4

Note (4): JScript .NET is "being developed in conjunction with ECMAScript Edition 4" (Source: MSDN)

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 follows their corresponding Visual Studio versions.

.NET Framework 3.0 and 3.5 are built on top of 2.0 and do not include newer releases of JScript .NET.

(Source: file version of Microsoft.JScript.dll in each framework install)

Differences from JavaScript

JScript supports the conditional comment, but JavaScript does not.

Other subtle differences exist, like the different behaviors that some methods exhibit (for example the RegExp methods).

Among other internal implementation differences, JScript uses non-generational mark-and-sweep garbage collection[4] whereas SpiderMonkey (the original implementation of JavaScript) uses a generational mark-and-sweep system[clarification needed].

See also

Notes

  1. This means that it can be "plugged in" to any application that supports Windows Script, such as Internet Explorer, Active Server Pages, and Windows Script Host. It also means that any application supporting Windows Script can use multiple languages — JScript, VBScript, Perl, and others.
  2. Microsoft Developer Network. "Version Information (JScript 5.6)". http://msdn2.microsoft.com/en-us/library/s4esdbwz.aspx. Retrieved 2007-08-12. 
  3. Microsoft Developer Network. "Microsoft JScript Features - Non-ECMA (JScript 5.6)". http://msdn2.microsoft.com/en-us/library/4tc5a343.aspx. Retrieved 2007-08-12. 
  4. Eric Lippert. "How Do The Script Garbage Collectors Work?". http://blogs.msdn.com/ericlippert/archive/2003/09/17/53038.aspx. Retrieved 2007-08-12. 

External links

Template:Microsoft APIs