Note: Although I will continue to track the currently listed problems until they are resolved, this collection is unlikely to be expanded.

Due to the abundance of flaws, security holes, and incompatibilities in the JavaScript interpreters in all the major browsers, not to mention the annoying abuses of JavaScript by amateur authors and by sites like GeoCities, I am reluctant to use or recommend JavaScript for serious communication.

See the Opera Software Web site or the Opera news server for up-to-date information on the Opera browser.

Opera JavaScript Problems
Growing Pains for a Promising Web Browser

The Good News

Opera Software has released version 3.60 of Opera, a promising Web browser which is smaller and faster than either Microsoft Internet Explorer or Netscape Navigator, and which offers users more flexibility in controlling their browsing environments than browsers from the "big two."

Version 3.60 was released in May 1999, adding support for cascading style sheets (CSS) and correcting several bugs (some JavaScript-related). Version 4 is is expected to include several more improvements, including its own Java virtual machine (Version 3.60 supports Sun's Java Plugin).


The Bad News

There are numerous JavaScript-related flaws in the Opera browser. At one time I had discovered several and provided descriptions of them here. The descriptions are still here, but the collection is no longer being actively maintained.

Each flaw is demonstrated on a separate page, which you can reach with the links below. A Y in the "Fixed" column indicates that the problem has been fixed in version 3.60 unless otherwise noted.

VersionDescriptionFixed
3.0 Some mathematical computations produce incorrect results. Y
3.0 JavaScript fails to retrieve the "checked" property of a radio button. N
3.10 JavaScript falsely reports radio buttons as checked. N
3.10 Setting a radio button with JavaScript does not unselect other buttons in the same group. N
3.0 The Math.round method produces incorrect results. Y (3.50)
3.20 Date object constructors do not initialize objects properly.
(Steve Pugh)
N
3.20 The with statement does not work properly for some objects. N
3.0 Attempting to enumerate browser object properties may fail.
This is not considered a bug. There is no consistent behavior among other JavaScript-capable browsers, and this behavior is not addressed by the ECMA-262 specification.
n/a

I have reported the problems I discovered (at least those that appear to be genuine bugs) to Opera Software. Although I don't expect to receive any direct correspondence from Opera Software regarding the disposition of these problems, I will report any updates here.

Finally, note that the reporting of these flaws is not meant to disparage the Opera browser. Opera is a good product, offering an attractive alternative to the overgrown products being pushed by Microsoft and Netscape. Opera's JavaScript capability, however, is still experiencing some growing pains which I am confident will be addressed as the browser is refined.

Problem Status

The table in the section above shows the status as I know it (the "Fixed" column in the table above implies the problem status in version 3.21 of the browser). I don't expect to receive any information directly from Opera Software regarding the status of any of these problems, but as I learn of changes (through testing upcoming releases of the browser, etc.), I will post updates here.

If you know of other problems or discrepancies in the Opera browser's JavaScript interpreter, you should report them to Opera Software.


Last update: 11 Feb 1999 -- (Copyright) -- (Contact)