Take the 2-minute tour ×

I wanted to ask a few questions about javascript:

1.Does each browser implement javascript by itself ? Or is their a common SDK\API or whatever ?

2.If each browser implement by itself, Is the javascript engine bounded to the browser version ?

I mean, can I have 2 different engines for the same browser version ?

3.Is there any standards all javascript engines must follow ? Does this standard define memory

allocation ? (Lets say, How I allocate a javascript string ?)

And last,

What are the names of implementation for each browser ? For example I understood FirFox uses an

implementation called "Rhino", Am I right ?

Thanks alot ! Michael

share|improve this question

3 Answers 3

up vote 1 down vote accepted
  1. Yes, they implement JavaScript on they're own.
  2. Yes, it is bound to the browser version. No, you can't have 2 different engines for the same browser version. You can though for different browser versions.
  3. Yes, it is called EcmaScript. Most implementation follow it pretty good.
  4. FireFox does not use Rhino. Mozilla developed it, but the implementation in FireFox is different. All browsers implement single-threaded JavaScript, while Rhino is not single-threaded.
share|improve this answer

Each browser does implement its own version of JS. Thus, why some browsers outperform others. They specification on what JS should do and how it should be done is based on the ECMAScript specification. The only case I've seen of having multiple engines (or versions of engines) is with IE's web dev toolbar, where you can "roll back" your IE version to test how previous versions react. I've found the JS engine to be pretty faithful when doing browser version tests.

Wiki has a nice write up on the different engines. http://en.wikipedia.org/wiki/JavaScript_engine#Mozilla

share|improve this answer

JavaScript is standardized through the ECMAScript specification which most browsers will adhere to.

However, not all features are implemented across all browsers and browser versions and some features have their own browser specific quirks.

You can find more details about ECMAScript and the versions browsers implement here:-


You will not get two different JavaScript engines offered to you within the same browser (usually).

share|improve this answer

Your Answer


