In this publication, we refer to this browser by the commonly used abbreviation MSIE.
Because the Windows platform in particular and Microsoft products in general are componentized, the JScript interpreter can be replaced over the top of the Internet Explorer browser. This means that you can be running a version of JScript that is later than the browser version you are using. Scripts will work although they may not be able to exploit features of the later browser. For example, JScript 5.5 can be installed over the top of JScript 5.0 in a version 5.0 MSIE browser.
We wrote many scripts to inspect and enumerate various properties of the objects in the MSIE and Netscape browsers - the exposed object types and properties that were hitherto undocumented. They may have been available in earlier versions of the browser, however, where language elements were discovered for the first time, they are initially documented as being available from version 5 of MSIE. A limited amount of further testing was applied where it was suspected that language elements may have been available in earlier releases and the availability modified accordingly.
Because the MSIE browser is componentised to the extent that the JSscript interpreter is actually a separate installation to the MSIE browser, it is very difficult to arrive at a definitive version of JScript that correlates with a particular version of MSIE. For example, several different versions of JScript were extant with the version 3 MSIE browser.
Perhaps this may become less important as browsers converge on a single standard benchmark of functionality. For the time being, current practice suggests that version 4 browsers are rapidly being taken over by version 5 MSIE browsers. Version 2 and 3 of MSIE have declined to such small usage levels as to not require any further serious attempts to support them on new projects.
Refer to the JScript version topic for details of interpreter vs browser revisions.
Version 3.02 has these problems with identifier names:
Do not use dollar signs in identifier names.
Identifier names are caseless and this version cannot tell the difference between AAA and aaa.