Datasheet

Chapter 1: Introduction to JavaScript
13
resulted in a massive propagation of JavaScript - supported scripting tools using some common platform
so it has become more important than ever to keep track of which engines support which features of
the language and how they compare to one another.
Following is a list of major JavaScript engines.
Engine Vendor Description
Rhino Mozilla An open source JavaScript implementation written in Java.
Supports up to v1.7 of Mozilla’s JavaScript.
http://www.mozilla
.org/rhino/
SpiderMonkey Mozilla The first-ever JavaScript engine, still in use today in Mozilla-based
browsers (Netscape 6+ and Firefox 1+). Written in C++, it is
embedded in many 3rd party applications, much like Rhino and
JavaScriptCore. Most recent versions include the ground-breaking
TraceMonkey features supporting on-the-fly byte-code compilation
and optimization of code for improved performance.
JavaScriptCore Webkit Open source and originally derived from KDE’s JavaScript engine.
It’s currently used in the Webkit browser engine which is
implemented in Apple’s Safari (superceded by SquirrelFish Extreme
in 2008), Adobe AIR, iCab 4+, Konqueror, and Flock among others.
Also used in the OSX operating system for some scripting features,
and in Dreamweaver CS4 to provide in-IDE testing of JavaScript.
SquirrelFish Webkit An incremental rewrite of JavaScriptCore to be implemented in
most new versions of Webkit-based browsers including Safari.
http://trac.webkit.org/wiki/SquirrelFish
JScript Microsoft A component of Microsoft’s Trident layout engine and used in all
versions of Internet Explorer after 3.0. Also used as a component in
Windows, ASP, and the .NET programming framework.
Tamarin Adobe A free (GPL, LGPL, and MPL) ECMAScript engine used in Flash
v9.0 and up. Implements the Adobe language known as
ActionScript, which is primarily an implementation of ECMAScript.
V8 Google An open-source (BSD) ECMAScript engine used in Google’s
Chrome browser (which is based on WebKit).
http://code
.google.com/p/v8/
Elektra Opera The proprietary layout and JavaScript engine used by the Opera
browser versions 4-6.
Presto Opera The proprietary layout and JavaScript engine used more recent
versions of Opera (7.0+). This engine is also implemented on many
of the mobile and platform devices that support Opera, such as
Nintendo Wii, and Nintendo DS. Adobe’s Dreamweaver (up to CS4)
uses Presto.
CH001.indd 13CH001.indd 13 6/25/09 7:53:19 PM6/25/09 7:53:19 PM