Comparison of layout engines (ECMAScript)
Encyclopedia
The following tables compare ECMAScript
(particularly JavaScript
) support for a number of layout engines. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
ECMAScript
ECMAScript is the scripting language standardized by Ecma International in the ECMA-262 specification and ISO/IEC 16262. The language is widely used for client-side scripting on the web, in the form of several well-known dialects such as JavaScript, JScript, and ActionScript.- History :JavaScript...
(particularly JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
) support for a number of layout engines. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
ECMAScript version support
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Name of ECMAScript Engine | JScript JScript JScript is a scripting language based on the ECMAScript standard that is used in Microsoft's Internet Explorer.JScript is implemented as a Windows Script engine. This means that it can be "plugged in" to any application that supports Windows Script, such as Internet Explorer, Active Server Pages,... /Chakra Chakra (JScript engine) Chakra is a JScript engine developed by Microsoft for its Internet Explorer 9 web browser. A distinctive feature of the 32-bit version of the engine is that it JIT compiles scripts on a separate CPU core, parallel to the web browser... |
Spidermonkey/TraceMonkey | JavaScriptCore/SquirrelFish Extreme | Linear B/Futhark/Carakan |
ECMAScript Edition 3 | ||||
ECMAScript Edition 5 | ||||
JavaScript 1.5 extensions | ||||
JavaScript 1.6 extensions (excluding E4X) |
||||
JavaScript 1.7 extensions | ||||
JavaScript 1.8 extensions | ||||
JavaScript 1.8.1 extensions | ||||
JScript .NET JScript .NET JScript .NET is a .NET programming language developed by Microsoft as a natural successor to Microsoft's Active Scripting language JScript, which, in turn, started life as an implementation of JavaScript.... extensions |
||||
ActionScript ActionScript ActionScript is an object-oriented language originally developed by Macromedia Inc. . It is a dialect of ECMAScript , and is used primarily for the development of websites and software targeting the Adobe Flash Player platform, used on Web pages in the form of... extensions |
||||
E4X E4X ECMAScript for XML is a programming language extension that adds native XML support to ECMAScript . The goal is to provide an alternative to DOM interfaces that uses a simpler syntax for accessing XML documents. It also offers a new way of making XML visible... |
||||
Global object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Value properties | ||||
NaN |
||||
Infinity |
||||
undefined |
||||
Function properties | ||||
eval(x) |
||||
parseInt(string [, radix]) |
||||
parseFloat(string) |
||||
isNaN(number) |
||||
isFinite(number) |
||||
URI handling functions | ||||
decodeURI(encodedURI) |
||||
decodeURIComponent(encodedURIComponent) |
||||
encodeURI(uri) |
||||
encodeURIComponent(uriComponent) |
||||
Constructor properties | ||||
Object |
||||
Function |
||||
Array |
||||
String |
||||
Boolean |
||||
Number |
||||
Date |
||||
RegExp |
||||
Error |
||||
EvalError |
||||
RangeError |
||||
ReferenceError |
||||
SyntaxError |
||||
TypeError |
||||
URIError |
||||
Other properties | ||||
Math |
||||
Additional properties | ||||
escape(string) |
||||
unescape(string) |
||||
Object object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
Object([value]) |
||||
Called as constructor | ||||
new Object([value]) |
||||
Properties | ||||
prototype |
||||
Properties of prototype | ||||
constructor |
||||
toString |
||||
toLocaleString |
||||
valueOf |
||||
hasOwnProperty(V) |
||||
isPrototypeOf(V) |
||||
propertyIsEnumerable(V) |
||||
Function object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
Function(p1 [, p2 [, ...,] body]) |
? | ? | ? | ? |
Called as constructor | ||||
new Function(p1 [, p2 [, ...,] body]) |
||||
Properties | ||||
length |
? | ? | ||
prototype |
||||
Properties of prototype | ||||
length |
? | ? | ? | |
constructor |
||||
toString |
||||
apply(thisArg, argArray) |
||||
call(thisArg [, arg1 [, arg2 [, ...]]]) |
||||
Properties of instances | ||||
length |
||||
prototype |
||||
Array object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
Array([item1 [, item2 [, ...]]]) |
? | ? | ? | ? |
Called as constructor | ||||
new Array([item1, item2 [, ...]]) |
||||
new Array(len) |
||||
Properties | ||||
prototype |
||||
Properties of prototype | ||||
constructor |
||||
toString |
||||
toLocaleString |
||||
concat([item1 [, item2 [,...]]]) |
||||
join(separator) |
||||
pop |
||||
push([item1 [, item2 [,...]]]) |
||||
reverse |
||||
shift |
||||
slice(start, end) |
||||
sort(comparefn) |
||||
splice(start, deleteCount [, item1 [, item2 [, ...]]]) |
||||
unshift([item1 [, item2 [, ...]]]) |
||||
indexOf(searchElement[, fromIndex]) |
rowspan="9" | |||
lastIndexOf(searchElement[, fromIndex]) |
||||
filter(callback[, thisObject]) |
||||
forEach(callback[, thisObject]) |
||||
every(callback[, thisObject]) |
||||
map(callback[, thisObject]) |
||||
some(callback[, thisObject]) |
||||
reduce(callback[, initialValue]) |
||||
reduceRight(callback[, initialValue]) |
||||
Properties of instances | ||||
length |
||||
String object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
String([value]) |
? | ? | ? | ? |
Called as constructor | ||||
new String([value]) |
||||
Properties | ||||
prototype |
||||
fromCharCode([char0 [, char1 [, ...]]]) |
||||
Properties of prototype | ||||
constructor |
||||
toString |
||||
valueOf |
||||
charAt(pos) |
||||
charCodeAt(pos) |
||||
concat([string1 [, string2 [, ...]]]) |
||||
indexOf(searchString, position) |
||||
lastIndexOf(searchString, position) |
||||
localeCompare(that) |
||||
match(regexp) |
||||
replace(searchValue, replaceValue) |
||||
search(regexp) |
||||
slice(start, end) |
||||
split(separator, limit) |
||||
substring(start, end) |
||||
toLowerCase |
||||
toLocaleLowerCase(comparefn) |
||||
toUpperCase |
||||
toLocaleUpperCase |
||||
Additional properties of prototype | ||||
substr(start, length) |
||||
Properties of instances | ||||
length |
||||
Boolean object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
Boolean([value]) |
? | ? | ? | |
Called as constructor | ||||
new Boolean([value]) |
||||
Properties | ||||
prototype |
||||
Properties of prototype | ||||
constructor |
||||
toString |
||||
valueOf |
||||
Number object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
Number([value]) |
? | ? | ? | |
Called as constructor | ||||
new Number([value]) |
||||
Properties | ||||
prototype |
||||
MAX_VALUE |
||||
MIN_VALUE |
||||
NaN |
||||
NEGATIVE_INFINITY |
||||
POSITIVE_INFINITY |
||||
Properties of prototype | ||||
constructor |
||||
toString([radix]) |
||||
toLocaleString |
||||
valueOf |
||||
toFixed(fractionDigits) |
||||
toExponential(fractionDigits) |
||||
toPrecision(precision) |
||||
Math object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Value properties | ||||
E |
||||
LN10 |
||||
LN2 |
||||
LOG2E |
||||
LOG10E |
||||
PI |
||||
SQRT1_2 |
||||
SQRT2 |
||||
Function properties | ||||
abs(x) |
||||
acos(x) |
||||
asin(x) |
||||
atan(x) |
||||
atan2(y, x) |
||||
ceil(x) |
||||
cos(x) |
||||
exp(x) |
||||
floor(x) |
||||
log(x) |
||||
max([value1 [, value2 [, ...]]]) |
||||
min([value1 [, value2 [, ...]]]) |
||||
pow(x, y) |
||||
random |
||||
round(x) |
||||
sin(x) |
||||
sqrt(x) |
||||
tan(x) |
||||
Date object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
Date ([year [, month [, date [, hours [, minutes [, seconds [, ms ]]]]]]]) |
? | ? | ? | ? |
Called as constructor | ||||
new Date (year, month [, date [, hours [, minutes [, seconds [, ms ]]]]]) |
||||
new Date (value) |
||||
new Date |
||||
Properties | ||||
prototype |
||||
parse(string) |
||||
UTC (year, month [, date [, hours [, minutes [, seconds [, ms ]]]]]) |
||||
Properties of prototype | ||||
constructor |
||||
toString |
||||
toDateString |
||||
toTimeString |
||||
toLocaleString |
||||
toLocaleDateString |
||||
toLocaleTimeString |
||||
valueOf |
||||
getTime |
||||
getFullYear |
||||
getMonth |
||||
getUTCMonth |
||||
getDate |
||||
getUTCDate |
||||
getDay |
||||
getUTCDay |
||||
getHours |
||||
getUTCHours |
||||
getMinutes |
||||
getUTCMinutes |
||||
getSeconds |
||||
getUTCSeconds |
||||
getMilliseconds |
||||
getUTCMilliseconds |
||||
getTimezoneOffset |
||||
setTime(time) |
||||
setMilliseconds(ms) |
||||
setUTCMilliseconds(ms) |
||||
setSeconds(sec [, ms]) |
||||
setUTCSeconds(sec [, ms]) |
||||
setMinutes(min [, sec [, ms]]) |
||||
setUTCMinutes(min [, sec [, ms]]) |
||||
setHours(hour [, min [, sec [, ms]]]) |
||||
setUTCHours(hour [, min [, sec [, ms]]]) |
||||
setDate(date) |
||||
setUTCDate(date) |
||||
setMonth(month [, date]) |
||||
setUTCMonth(month [, date]) |
||||
setFullYear(year [, month [, date]]) |
||||
setUTCFullYear(year [, month [, date]]) |
||||
toUTCString |
||||
Additional properties of prototype | ||||
getYear |
||||
setYear(year) |
||||
toGMTString |
||||
RegExp object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
RegExp (pattern, flags) |
? | ? | ? | ? |
Called as constructor | ||||
new RegExp (pattern, flags) |
||||
Properties | ||||
prototype |
||||
Properties of prototype | ||||
constructor |
||||
exec(string) |
||||
test(string) |
||||
toString |
||||
Properties of instances | ||||
source |
||||
global |
||||
ignoreCase |
||||
multiline |
||||
lastIndex |
||||
Error object
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
Error (message) |
? | ? | ? | ? |
Called as constructor | ||||
new Error (message) |
||||
Properties | ||||
prototype |
||||
Properties of prototype | ||||
constructor |
||||
name |
||||
message |
||||
toString |
||||
NativeError objects
Trident Trident (layout engine) Trident is the name of the layout engine for the Microsoft Windows version of Internet Explorer.It was first introduced with the release of Internet Explorer version 4.0 in October 1997; it has been steadily upgraded and remains in use today... |
Gecko Gecko (layout engine) Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects.... |
WebKit WebKit WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Google Chrome and Apple Safari and by October 2011 held over 33% of the browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook... |
Presto Presto (layout engine) Presto is the layout engine for later versions of the Opera web browser . After several public betas and technical previews, it was released on January 28, 2003 in Opera 7 for Windows, and as of Opera 11 it is still in use. Presto is dynamic: the page or parts of it can be re-rendered in response... |
|
---|---|---|---|---|
Called as function | ||||
EvalError (message) |
? | ? | ? | |
RangeError (message) |
? | ? | ? | |
ReferenceError (message) |
? | ? | ? | |
SyntaxError (message) |
? | ? | ? | |
TypeError (message) |
? | ? | ? | |
URIError (message) |
? | ? | ? | |
Called as constructor | ||||
new EvalError (message) |
? | ? | ? | |
new RangeError (message) |
? | ? | ? | |
new ReferenceError (message) |
? | ? | ? | |
new SyntaxError (message) |
? | ? | ? | |
new TypeError (message) |
? | ? | ? | |
new URIError (message) |
? | ? | ? | |
Properties | ||||
prototype |
? | ? | ? | |
Properties of prototype | ||||
constructor |
? | ? | ? | |
name |
? | ? | ? | |
message |
? | ? | ? | |
External links
- Webdevout — mostly covers Windows browsers. Extensive bug testing.