The following is a changelog for JavaScript from Netscape Navigator 4.0 to 4.5. The old Netscape documentation can be found on archive.org. Netscape Navigator 4.5 was released on October 19, 1998.
The most significant change in JavaScript 1.3 was compliance with ECMA-262 and Unicode by removing inconsistencies between JavaScript 1.2 and the new ECMA standard (which was published in June 1997). Additional features of version 1.2, at the time not specified by ECMA-262 were kept in the JavaScript language (see below for a list of differences).
Netscape Communicator and Navigator 4.06 and 4.5 executes JavaScript language versions up to 1.3. Note that Communicator and Navigator 4.0-4.05 and earlier ignored scripts with the language attribute set to "JavaScript1.3" and higher.
<SCRIPT LANGUAGE="JavaScript1.2"> <!-- JavaScript for Navigator 4.0. --> <SCRIPT LANGUAGE="JavaScript1.3"> <!-- JavaScript for Navigator 4.5. -->
isFinite()
Function.prototype.call()
Function.prototype.apply()
Date.UTC()
Date.prototype.getFullYear()
Date.prototype.setFullYear()
Date.prototype.getMilliseconds()
Date.prototype.setMilliseconds()
Date.prototype.getUTCFullYear()
Date.prototype.getUTCMonth()
Date.prototype.getUTCDate()
Date.prototype.getUTCHours()
Date.prototype.getUTCMinutes()
Date.prototype.getUTCSeconds()
Date.prototype.getUTCMilliseconds()
Date.prototype.toUTCString()
Date.prototype.setUTCFullYear()
Date.prototype.setUTCMonth()
Date.prototype.setUTCDate()
Date.prototype.setUTCHours()
Date.prototype.setUTCMinutes()
Date.prototype.setUTCSeconds()
Date.prototype.setUTCMilliseconds()
Date
to conform with ECMA-262
Date(year, month, day, [,hours [, minutes [, seconds [, milliseconds ]]]])
setMonth(month[, date])
setHours(hours[, min[, sec[, ms]]])
setMinutes(min[, sec[, ms]])
setSeconds(sec[, ms])
Array.prototype.push()
: In JavaScript 1.2, the push
method returned the last element added to an array. Under JavaScript 1.3, push
returns the new length of the array.Array.prototype.slice()
: In JavaScript 1.2, the splice
method returned the element removed, if only one element was removed (howMany
parameter is 1
). In JavaScript 1.3, splice
always returns an array containing the removed elements. If one element is removed, an array of one element is returned.String.prototype.replace()
.Boolean
object.toString()
.The following is a comparison between the June 1998 version of ECMA-262 and JavaScript 1.3. The following features were not part of the standard at that time, but implemented in JavaScript 1.3.
\v
or \u000B
) as an escape sequence.toSource()
Object.prototype.watch()
Object.prototype.unwatch()
Function.arity
Function.prototype.apply()
Function.prototype.call()
Array.prototype.concat()
Array.prototype.pop()
Array.prototype.push()
Array.prototype.shift()
Array.prototype.slice()
Array.prototype.splice()
String.prototype.concat()
String.prototype.concat()
String.prototype.match()
String.prototype.search()
String.prototype.slice()
String.prototype.substr()