The World of JScript, JavaScript, ECMAScript …

Change is inevitable, except from vending machines – a quote from an unknown source but so true. With the release of the Visual J# 2.0 Redist-SE over, the time has come for me to change and look for bigger and brighter challenges. I recently moved to the JScript team at Microsoft IDC. So yes, that would mean going ahead you would read quite a bit on the same at my blogs. Here is a short summary of a few definitions:


What is JScript?


JScript is Microsoft’s implementation of the ECMAScript scripting language. JScript is implemented as a Windows Script engine, which means it can be “plugged in” to any application that supports Windows Script, such as Internet Explorer, Active Server Pages, and Windows Script Host. JScript was first supported in Internet Explorer browser 3.0 and typical file extension of JScript source code files is .js.


Got you, but then what is ECMAScript?


ECMAScript is a scripting programming language, standardized by Ecma International in the ECMA-262 specification. There are three editions of ECMA-262 published, and the work on the fourth edition is in progress.


ECMAScript is supported in many applications, especially web browsers where it is is often referred to as JavaScript or JScript. The various dialects typically include their own, different standard libraries, of which some are standardized separately – such as the W3C-specified DOM. Some implementations, of the same have a completely different set of libraries. This means that applications written in one dialect of ECMAScript will not likely work in another, unless they are designed to be compatible


What is JavaScript? How is it different from JScript?


“JavaScript” is actually Netscape Communications Corporation’s (and now the Mozilla Foundation’s) implementation of the ECMAScript standard.


In addition to other internal implementation differences, the existing version of JScript uses non-generational mark-and-sweep garbage collection whereas JavaScript (the original implementation of which is the SpiderMonkey engine) uses a generational mark-and-sweep system.



Note: Though people often use JScript and JavaScript interchangeably, which is because of the fact that these languages are very similar, it is important to note that neither of them is a simplified version of Java as some may think. Other than incomplete syntactic resemblance and the fact that both JScript/JavaScript and Java can provide executable content in web browsers, the two languages are unrelated.


Would follow up with more soon …

Comments (11)

  1. peeles says:

    what about (in .net 1.1 or 2.0)?

  2. GauravS says:

    I would briefly talk about the MS flavors of JScript in the next blog.

  3. There are three different types of JScript engines that MS currently offers to the users. In this blog

  4. adde006 says:

    hello.. i need a prog that i change ”.java” scripts in.. does someone have any???

  5. GauravS says:

    adde006 – could you pl elaborate on the exact requirements and what is the result that you desire.

  6. JScript Blog says:

    Being a late entrant into the group, I always had questions regarding what’s what of JScript – Managed

  7. sad says:

    That sounds like J# won’t ever make it to Java 6 compatibility.

  8. works guo says:

    当前MS提供给用户三种不同的JScript Engine,在这篇文章中我们将讨论他们之间的不同,和他们不同的动机.

  9. Who’s in charge of maintaining JScript? How hard would it be to alias some of JScript (for instance) event handling stuff so that it matched up nicely with W3c Stuff and the DOM, instead of us having to write out own aliases in our code?

    Sure, it’s only 20 seconds of extra effort and it only takes an extra microsecond to execute and load over doing it properly, but consider how many times we’ve had to work around this broken implementation now creating web applications? 20 seconds multiplied by a million instances where we’ve had to code a workaround for this particular bug……

    If the internet were an entity, it would be suing.

    Since JScript is NOT Javascript (as you pointed out) how can we teach Internet Explorer to NOT try to interpret text/javascript as jscript??

    Seriously.. My text/javascript (or with a modern application/ mime type) is exactly that. Javascript. I guess the real question is, what is the appropriate mime type for JScript so that it stops pretending to be a buggy javascript interpreter and just admits that it is what is, name a JScript interpreter?

  10. [Nacsa Sándor, 2009. január 20. – február 12.] Komplett fejlesztő környezet Windows kliens és web alkalmazások