Play Video
1
JavaScript Engines: Under the Hood
JavaScript Engines: Under the Hood
::2011/12/16::
Play Video
2
Google I/O 2009 - V8: ..High Performance JavaScript Engine
Google I/O 2009 - V8: ..High Performance JavaScript Engine
::2009/06/02::
Play Video
3
V8: an open source JavaScript engine
V8: an open source JavaScript engine
::2008/09/15::
Play Video
4
Why is Google Chrome Fast? Spotlight on V8 JavaScript Engine
Why is Google Chrome Fast? Spotlight on V8 JavaScript Engine
::2009/12/03::
Play Video
5
The Inner Workings of the Chakra Javascript Engine - Steve Lucco
The Inner Workings of the Chakra Javascript Engine - Steve Lucco
::2013/03/27::
Play Video
6
Google I/O 2012 - Breaking the JavaScript Speed Limit with V8
Google I/O 2012 - Breaking the JavaScript Speed Limit with V8
::2012/06/29::
Play Video
7
BananaBread - 3D JavaScript engine
BananaBread - 3D JavaScript engine
::2012/05/06::
Play Video
8
V8 (JavaScript engine)
V8 (JavaScript engine)
::2014/10/07::
Play Video
9
Building a JavaScript-Based Game Engine for the Web
Building a JavaScript-Based Game Engine for the Web
::2010/07/10::
Play Video
10
Tech News Tonight 101: Faster iOS 8 JavaScript Engine for All Apps
Tech News Tonight 101: Faster iOS 8 JavaScript Engine for All Apps
::2014/06/04::
Play Video
11
Introduction To Nashorn The JVM JavaScript Engine
Introduction To Nashorn The JVM JavaScript Engine
::2012/11/27::
Play Video
12
SpiderMonkey JavaScript engine hacking intro: adding a builtin function to the shell
SpiderMonkey JavaScript engine hacking intro: adding a builtin function to the shell
::2011/10/19::
Play Video
13
Nerdy - Simpel 2D javascript "Engine"
Nerdy - Simpel 2D javascript "Engine"
::2012/03/11::
Play Video
14
Internet Explorer 9 (IE9) JavaScript Engine First Look (1/3)
Internet Explorer 9 (IE9) JavaScript Engine First Look (1/3)
::2009/12/29::
Play Video
15
Understanding JavaScript engines of various browsers -Parashuram Narasimhan
Understanding JavaScript engines of various browsers -Parashuram Narasimhan
::2011/10/29::
Play Video
16
Having fun with BrowserQuest
Having fun with BrowserQuest's javascript engine
::2012/04/01::
Play Video
17
Node js tutorials Exploring language additions to the V8 JavaScript engine
Node js tutorials Exploring language additions to the V8 JavaScript engine
::2014/09/13::
Play Video
18
Nashorn: JavaScript on the JVM
Nashorn: JavaScript on the JVM
::2014/03/26::
Play Video
19
Internet Explorer 9 (IE9) JavaScript Engine First Look (3/3)
Internet Explorer 9 (IE9) JavaScript Engine First Look (3/3)
::2009/12/29::
Play Video
20
Shashwat Agarwal - JavaScript Engines - SpiderMonkey vs V8
Shashwat Agarwal - JavaScript Engines - SpiderMonkey vs V8
::2012/10/29::
Play Video
21
Programming A Chess Engine In Pure Javascript Part 1 - Introduction
Programming A Chess Engine In Pure Javascript Part 1 - Introduction
::2013/07/12::
Play Video
22
Helicopter HTML5 JavaScript Game Engine [dynamic camera, new UI] 17.08.2014
Helicopter HTML5 JavaScript Game Engine [dynamic camera, new UI] 17.08.2014
::2014/08/17::
Play Video
23
Google I/O Sunspider JavaScript engine demo Round 2: iPad vs Nexus One vs XOOM
Google I/O Sunspider JavaScript engine demo Round 2: iPad vs Nexus One vs XOOM
::2011/04/04::
Play Video
24
[JSConfEU 2010] Pete LePage: Chakra - Building A New JavaScript Engine For Internet Explorer 9
[JSConfEU 2010] Pete LePage: Chakra - Building A New JavaScript Engine For Internet Explorer 9
::2013/06/23::
Play Video
25
iOS 5 Will Support Nitro JavaScript Engine For Fullscreen Web Apps! Apple Safari In iOS 4.3 Update!
iOS 5 Will Support Nitro JavaScript Engine For Fullscreen Web Apps! Apple Safari In iOS 4.3 Update!
::2011/06/18::
Play Video
26
Internet Explorer 9 (IE9) JavaScript Engine First Look (2/3)
Internet Explorer 9 (IE9) JavaScript Engine First Look (2/3)
::2009/12/29::
Play Video
27
JavaScript JSON Ajax Requests to App Engine Tutorial
JavaScript JSON Ajax Requests to App Engine Tutorial
::2012/10/11::
Play Video
28
Unreal Engine 3 in Firefox with asm.js
Unreal Engine 3 in Firefox with asm.js
::2013/05/02::
Play Video
29
Adamia3d - 3D Javascript Engine
Adamia3d - 3D Javascript Engine
::2009/03/06::
Play Video
30
Crafty Demo - Javascript Game Engine
Crafty Demo - Javascript Game Engine
::2010/11/25::
Play Video
31
Ariya Hidayat - JavaScript and the Browser: Under the Hood
Ariya Hidayat - JavaScript and the Browser: Under the Hood
::2014/09/19::
Play Video
32
Node.js Tutorial with Ryan Dahl, creator of Node.js
Node.js Tutorial with Ryan Dahl, creator of Node.js
::2014/01/02::
Play Video
33
Maps Live: Visualizing Maps Engine Data on JavaScript Maps
Maps Live: Visualizing Maps Engine Data on JavaScript Maps
::2013/07/01::
Play Video
34
HTML5 Isometric Game Engine built using JavaScript (Float Engine)
HTML5 Isometric Game Engine built using JavaScript (Float Engine)
::2011/05/10::
Play Video
35
Rocket Engine Introduction - HTML/Javascript - Plugin-Free Browser Game Development
Rocket Engine Introduction - HTML/Javascript - Plugin-Free Browser Game Development
::2010/09/01::
Play Video
36
Programming A Chess Engine In Pure Javascript Part 10 - FEN Position String #1
Programming A Chess Engine In Pure Javascript Part 10 - FEN Position String #1
::2013/07/22::
Play Video
37
Babylon.js A 3D Game Engine In JavaScript From Microsoft
Babylon.js A 3D Game Engine In JavaScript From Microsoft
::2013/08/15::
Play Video
38
Physics Engine in Javascript
Physics Engine in Javascript
::2013/12/02::
Play Video
39
Programming A Chess Engine In Pure Javascript Part 11 - FEN Position String #2 Pieces
Programming A Chess Engine In Pure Javascript Part 11 - FEN Position String #2 Pieces
::2013/07/22::
Play Video
40
Simple JavaScript Particle Engine using Canvas 2D
Simple JavaScript Particle Engine using Canvas 2D
::2014/05/23::
Play Video
41
Allen Pike: native.js: JavaScript in your native mobile apps -- JSConf EU 2013
Allen Pike: native.js: JavaScript in your native mobile apps -- JSConf EU 2013
::2013/10/10::
Play Video
42
Programming A Chess Engine In Pure Javascript Part 14 - Set FEN From the GUI
Programming A Chess Engine In Pure Javascript Part 14 - Set FEN From the GUI
::2013/07/24::
Play Video
43
Programming A Chess Engine In Pure Javascript Part 7 - Position Hash Key #1
Programming A Chess Engine In Pure Javascript Part 7 - Position Hash Key #1
::2013/07/17::
Play Video
44
Getting started with Quintus HTML5 Javascript Game engine
Getting started with Quintus HTML5 Javascript Game engine
::2014/01/27::
Play Video
45
Programming A Chess Engine In Pure Javascript Part 6 - Piece Lists
Programming A Chess Engine In Pure Javascript Part 6 - Piece Lists
::2013/07/17::
Play Video
46
Programming A Chess Engine In Pure Javascript Part 23 - Move Generation #2 - Pawns
Programming A Chess Engine In Pure Javascript Part 23 - Move Generation #2 - Pawns
::2013/08/07::
Play Video
47
HTML5 Javascript Game Engine 2.0
HTML5 Javascript Game Engine 2.0
::2011/02/10::
Play Video
48
Programming A Chess Engine In Pure Javascript Part 63 - More Buttons and End Of Series
Programming A Chess Engine In Pure Javascript Part 63 - More Buttons and End Of Series
::2013/09/30::
Play Video
49
Programming A Chess Engine In Pure Javascript Part 25 - Move Generation #4 - NonSlide Pieces
Programming A Chess Engine In Pure Javascript Part 25 - Move Generation #4 - NonSlide Pieces
::2013/08/09::
Play Video
50
Programming A Chess Engine In Pure Javascript Part 18 - Is A Square Attacked #2
Programming A Chess Engine In Pure Javascript Part 18 - Is A Square Attacked #2
::2013/07/30::
NEXT >>
RESULTS [51 .. 101]
From Wikipedia, the free encyclopedia
Jump to: navigation, search
Not to be confused with Java Runtime Environment.

A JavaScript engine is a virtual machine which interprets and executes JavaScript (also known as ECMAScript). Although there are several uses for a JavaScript engine, it is most commonly used in web browsers.[1][2]

History[edit]

Before the second browser war in 2008-2009, JavaScript engines (also termed JavaScript interpreter or JavaScript implementation) were simply interpreters that read and executed JavaScript source code.

The first JavaScript engine was created by Brendan Eich at Netscape Communications Corporation for the Netscape Navigator web browser. The engine, code named SpiderMonkey, is implemented in C++. It has since been updated (in JavaScript 1.5) to conform to ECMA-262 Edition 3. The Rhino engine, created primarily by Norris Boyd (also at Netscape) is a JavaScript implementation in Java. Like SpiderMonkey, Rhino is ECMA-262 Edition 3 compliant. Applications of the technology include Apple Safari 4's Nitro, Google Chrome's V8 and Mozilla Firefox 3.5's TraceMonkey.

By far the most common host environment for JavaScript is a web browser. Web browsers typically use the public application programming interface (API) to create "host objects" responsible for reflecting the Document Object Model (DOM) into JavaScript.

The web server is another common application of the engine. A JavaScript web server exposes host objects representing an HTTP request and response objects, which a JavaScript program then manipulates to dynamically generate web pages. Microsoft's ASP technology for IIS allows server-side code to be written in VBScript or JScript (Microsoft's implementation of JavaScript). Jaxer is a web server that runs entirely on JavaScript; this has the benefit of allowing the same code to be shared on the server and on the client.

Performance evolution[edit]

"..previously behind-the-scenes programming technology called JavaScript is getting new visibility .. "

—CNET[2]

A typical major browser has a graphical engine and an independent JavaScript engine, which allows for easier testing, reimplementation or use in other projects. For example Carakan is used with Presto; Nitro with WebKit; SpiderMonkey with Gecko; KJS with KHTML; Rhino by default has no layout engine. Other combinations are possible, for example, V8 with Blink in Google Chrome. The JavaScript engine gives developers access to functionality (networking, DOM handling, external events, HTML5 video, canvas and data storage) needed to control the web browser.

SunSpider is a JavaScript benchmark utility for measuring the performance of JavaScript engines in more than a dozen tests, each concentrating on different part of JavaScript language. SunSpider does not use for benchmarking any features beyond those needed to test pure computations (no HTML, no CSS, no networking).

The JavaScript engine race: 2008 and 2009[edit]

Recently, there has been a race by browser developers to develop even faster JavaScript engines in response to the growing use of JavaScript frameworks and Ajax, as the user's experience is directly influenced by the browser's ability to execute the site's client-side code. In 2008, Google Chrome was praised for its JavaScript performance, but other browsers soon received new JavaScript engines which were faster. Later, Chrome won in the races of better performance. Chrome's strength is its application performance and JavaScript processing speed, both of which were independently verified by multiple websites to be the fastest amongst the major browsers of its time.[3][4][5] With the advent of WebKit's Squirrelfish and Mozilla's TraceMonkey JavaScript virtual machines, Chrome's JavaScript execution performance has been found to be slower.[6][7][8][9] Google responded with the Danish-developed V8 which boosted JavaScript performance in Google Chrome 2.

On June 2, 2008, the WebKit development team announced SquirrelFish,[10] a then-new JavaScript engine that vastly improves Safari's speed at interpreting scripts.[11] The engine was one of the new features in Safari 4, released for developers on June 11, 2008; the final JavaScript engine was called Nitro.

In January 2009, the engine then known as SquirrelFish Extreme (SFX) was enabled for Mac OS X on x86-64 architectures as it passes all tests on that platform by Apple Inc.[12] Released June 30, 2009, Firefox 3.5 includes the optimization technique that offered "performance improvements ranging between 20 and 40 times faster" compared to Firefox 3 in some cases.[13]

The JavaScript engine race: 2010[edit]

In early 2010, the Norwegian Opera browser replaced the aging Futhark with the faster Carakan, which was 2.5 times faster in early testing.[2] Others in the race, at this time, include Apple's Safari's Nitro (the engine formerly known as SquirrelFish) and Firefox's new JägerMonkey (a "cross-child of Nitro with the older TraceMonkey Engine").[1] Microsoft lagged behind, lacking a dedicated JavaScript engine and being the slowest of the major browsers. Although by mid-2010, Microsoft held out the carrot of Chakra in then unreleased Internet Explorer 9.[1] JägerMonkey began testing in the publicly released Firefox 4.0 beta in Summer 2010.[14] Safari 5, also released in Summer 2010, featured 30 percent faster JavaScript performance than Safari 4 (using the Nitro engine).[15]

2011[edit]

In 2011, Firefox 4 and Internet Explorer 9 were released with their JavaScript software.[citation needed]

JavaScript engines[edit]

Active projects[edit]

Inactive projects[edit]

  • Tamarin, by Adobe Labs
  • Carakan, by Opera Software, used by Opera web browser version 10.50 until switching to V8 with Opera 14 (released in 2013).[19][20]
  • Futhark, by Opera Software, used by Opera web browser versions 9.50 to 10.10 until replaced by Carakan in Opera 10.50 (released March 2010).
  • Narcissus open source, written by Brendan Eich, who also wrote SpiderMonkey

Implementations[edit]

JavaScript is a dialect of ECMAScript, which is supported in many applications, especially web browsers. Dialects sometimes include extensions to the language, or to the standard library and related application programming interfaces (API) such as the World Wide Web Consortium (W3C) specified Document Object Model (DOM). This means that an application written in one dialect may be incompatible with another, unless the applications are written to use only a common subset of supported features and APIs ("core").

A dialect and an implementation are distinct: a dialect of a language is a significant variant of that language, while an implementation of a language (or dialect) executes a program written in that language (or dialect).

Application Dialect and latest version ECMAScript edition
Google Chrome, the V8 engine JavaScript ECMA-262, edition 5
Mozilla Firefox, the Gecko layout engine, SpiderMonkey, and Rhino JavaScript 1.8.5 ECMA-262, edition 5
Safari, the Nitro engine JavaScript ECMA-262, edition 5.1
Opera ECMAScript with some JavaScript 1.5
and JScript extensions[21]
ECMA-262, edition 5.1
KHTML layout engine, KDE's Konqueror JavaScript 1.5 ECMA-262, edition 3
Adobe Acrobat JavaScript 1.5 ECMA-262, edition 3
OpenLaszlo JavaScript 1.4 ECMA-262, edition 3
Max/MSP JavaScript 1.5 ECMA-262, edition 3
ANT Galio 3 JavaScript 1.5 with RMAI extensions ECMA-262, edition 3

See also[edit]

References[edit]

  1. ^ a b c Shankland, Stephen (2010-03-02). "Opera 10.5 brings new JavaScript engine". CNET. CBS Interactive. Retrieved 2012-01-30. 
  2. ^ a b c Shankland, Stephen (February 5, 2009). "Need for speed spurs Opera JavaScript overhaul". CNET. CBS Interactive. 
  3. ^ Shankland, Stephen (2008-09-02). "Speed test: Google Chrome beats Firefox, IE, Safari". CNET Business Tech. CBS Interactive. Retrieved 2010-06-28. 
  4. ^ "Big browser comparison test: Internet Explorer vs. Firefox, Opera, Safari and Chrome". PC Games Hardware. Computec Media AG. Retrieved 2010-06-28. 
  5. ^ "Lifehacker Speed Tests: Safari 4, Chrome 2". Lifehacker. Retrieved 2010-06-28. 
  6. ^ Shankland, Stephen (2008-09-02). "Third Chrome beta another notch faster". CNET. CBS Interactive. Retrieved 2010-06-28. 
  7. ^ Shankland, Stephen (2008-09-19). "Step aside, Chrome, for Squirrelfish Extreme". CNET. CBS Interactive. Retrieved 2010-06-29. 
  8. ^ "SquirrelFish Extreme: Fastest JavaScript Engine Yet". satine.org. Retrieved 2010-06-29. 
  9. ^ Shankland, Stephen (2008-09-03). "Firefox counters Google's browser speed test". CNET Business Tech. CBS Interactive. Retrieved 2010-06-29. 
  10. ^ Garen, Geoffrey (2008-06-02). "Announcing SquirrelFish". Retrieved 2008-06-11. 
  11. ^ Lipskas, Vygantas (2008-06-11). "Apple Safari 4". Retrieved 2008-06-11. 
  12. ^ https://trac.webkit.org/changeset/40439
  13. ^ Ryan Paul (2008-08-22). "Firefox to get massive JavaScript performance boost". arstechnica.com. Ars Technica © 2010 Condé Nast Digital. Retrieved 2010-06-28. 
  14. ^ "Firefox 4 Vision: fast, powerful, and empowering". 
  15. ^ http://www.prnewswire.com/news-releases/apple-releases-safari-5-95817479.html Safari 5 Released
  16. ^ Marius Oiaga (2010-03-20), Internet Explorer 9 Beta Next – New IE9 Builds Every 8 Weeks, softpedia.com (SoftNews NET SRL), retrieved 2010-06-28 
  17. ^ Werner Schuster (2011-10-02), InvokeDynamic and JavaScript - New Compiler Dyn.js, Oracle Nashorn and Rhino, InfoQ 
  18. ^ J. Laskey (2011-07-19), Adventures in JSR-292 or How To Be A Duck Without Really Trying, Oracle 
  19. ^ http://my.opera.com/ODIN/blog/300-million-users-and-move-to-webkit
  20. ^ http://my.opera.com/ODIN/blog/opera-14-for-android-is-out
  21. ^ "Web specifications support in Opera Presto". Opera.com. Opera Software ASA. Retrieved 2010-06-28. 

External links[edit]

Wikipedia content is licensed under the GFDL License
Powered by YouTube
LEGAL
  • Mashpedia © 2014