ECMAScript is the standardized version of JavaScript Core. It is being standardized through the ECMA standards body. ECMAScript does not include browser and document related objects.
Opera supports the entire ECMA-262 2nd and 3rd standards, with no exceptions. They are more or less aligned with JavaScript 1.3/1.5 Core.
Opera is actively participating with ECMA TC39 in developing successors to the current spec. Opera will support future editions of the language as consensus is reached and the specifications become finalized.
Opera Presto provides support for ECMAScript as described in the following table.
| Objects/Properties/Methods | JS | ECMA | Support |
|---|---|---|---|
| Global | 1.0 | ES1 | Yes |
eval(x) |
1.0 | ES1 | Yes |
isNaN(number) |
1.1 | ES1 | Yes |
isFinite(number) |
1.2 | ES1 | Yes |
decodeURI(encodedURI) |
1.5 | ES3 | Yes |
decodeURIComponent(encodedURIComponent) |
1.5 | ES3 | Yes |
encodeURI(uri) |
1.5 | ES3 | Yes |
encodeURIComponent(uriComponent) |
1.5 | ES3 | Yes |
parseInt(string [, radix]) |
1.0 | ES1 | Yes |
parseFloat(string) |
1.0 | ES1 | Yes |
escape(string) |
1.0 | ES1 | Yes |
Infinity |
1.3 | ES1 | Yes |
NaN |
1.3 | ES1 | Yes |
undefined |
1.5 | ES2 | Yes |
unescape(string) |
1.0 | ES1 | Yes |
| Object | 1.0 | ES1 | Yes |
hasOwnProperty(V) |
1.5 | ES3 | Yes |
isPrototypeOf(V) |
1.5 | ES3 | Yes |
propertyIsEnumerable(V) |
1.5 | ES3 | Yes |
toLocaleString() |
1.5 | ES3 | Yes |
toString() |
1.0 | ES1 | Yes |
unwatch(prop) |
- | - | No |
valueOf() |
1.1 | ES1 | Yes |
watch(prop, handler) |
- | - | No |
constructor |
1.1 | ES1 | Yes |
prototype |
(1.0) | ES1 | Yes |
| Function | 1.0 | ES1 | Yes |
apply(thisArg [, argArray]) |
1.2 | ES3 | Yes |
call(thisArg [, arg1, arg2, ... , argN]) |
1.5 | ES3 | Yes |
toString() |
1.0 | ES3 | Yes |
valueOf() |
(1.1) | ES1 | Yes |
arity |
1.2 | - | No |
caller |
1.5 | - | Yes |
constructor |
(1.1) | ES1 | Yes |
length |
1.1 | ES1 | Yes |
prototype |
1.1 | ES1 | Yes |
| Arguments | 1.1 | ES1 | Yes |
callee |
1.2 | ES3 | Yes |
caller |
[1.2] | - | No |
length |
1.1 | ES3 | Yes |
| Array | 1.1 | ES1 | Yes |
concat([item1, item2, ... , itemN]) |
1.2 | ES3 | Yes |
every(callback[, thisObject]) |
1.6 | - | Yes |
filter(callback[, thisObject]) |
1.6 | - | Yes |
forEach(callback[, thisObject]) |
1.6 | - | Yes |
indexOf(item) |
1.6 | - | Yes |
join(separator) |
1.1 | ES1 | Yes |
lastIndexOf(item) |
1.6 | - | Yes |
map(callback[, thisObject]) |
1.6 | - | Yes |
pop() |
1.2 | ES2 | Yes |
push([item1, item2, ... , itemN]) |
1.2 | ES2 | Yes |
reverse() |
1.1 | ES1 | Yes |
shift() |
1.2 | ES2 | Yes |
slice(start [, end]) |
1.2 | ES2 | Yes |
some(callback[, thisObject]) |
1.6 | - | Yes |
sort(comparefn) |
1.1 | ES1 | Yes |
splice(start, deleteCount [, item1, item2, ... , itemN]) |
1.2 | ES2 | Yes |
toString() |
1.1 | ES1 | Yes |
toLocaleString() |
1.5 | ES2 | Yes |
unshift([item1, item2, ... , itemN]) |
1.2 | ES2 | Yes |
valueOf() |
1.1 | ES3 | Yes |
constructor |
1.1 | ES1 | Yes |
index |
1.2 | ES3 | Yes |
input |
1.2 | ES3 | Yes |
length |
1.1 | ES1 | Yes |
prototype |
1.1 | ES1 | Yes |
| String | 1.0 | ES1 | Yes |
anchor(string) |
- | - | Yes |
big() |
- | - | Yes |
blink() |
- | - | Yes |
bold() |
- | - | Yes |
charAt(pos) |
1.0 | ES1 | Yes |
charCodeAt(pos) |
1.2 | ES1 | Yes |
concat ([item1, item2, ... , itemN]) |
1.2 | ES3 | Yes |
fixed() |
- | - | Yes |
fontcolor(string) |
- | - | Yes |
fontsize(string) |
- | - | Yes |
fromCharCode([code0, code1, ... , codeN]) |
1.2 | ES1 | Yes |
indexOf(pattern [, pos]) |
1.0 | ES1 | Yes |
italics() |
- | - | Yes |
lastIndexOf(pattern [, pos]) |
1.0 | ES1 | Yes |
link(string) |
- | - | Yes |
localeCompare(that) |
1.5 | ES3 | Yes |
replace(searchValue, replaceValue) |
1.2 | ES3 | Yes |
search(regexp) |
1.2 | ES3 | Yes |
slice(start [, end]) |
1.2 | ES3 | Yes |
small() |
- | - | Yes |
split(separator [, lim]) |
1.1 | ES1 | Yes |
strike() |
- | - | Yes |
sub() |
- | - | Yes |
substring(start, end) |
1.0 | ES1 | Yes |
substr(start [, length]) |
1.2 | ES1 | Yes |
sup() |
- | - | Yes |
toLocaleLowerCase() |
1.5 | ES3 | Yes |
toLocaleUpperCase() |
1.5 | ES3 | Yes |
toLowerCase() |
1.0 | ES1 | Yes |
toString() |
1.0 | ES1 | Yes |
toUpperCase() |
1.0 | ES1 | Yes |
valueOf() |
1.0 | ES1 | Yes |
constructor |
1.0 | ES1 | Yes |
length |
1.0 | ES1 | Yes |
match (regexp) |
1.2 | ES3 | Yes |
prototype |
1.1 | ES1 | Yes |
| Boolean | 1.1 | ES1 | Yes |
toString() |
1.1 | ES1 | Yes |
valueOf() |
1.1 | ES1 | Yes |
constructor |
1.1 | ES1 | Yes |
prototype |
1.1 | ES1 | Yes |
| Number | 1.1 | ES1 | Yes |
toExponential(fractionDigits) |
1.5 | ES3 | Yes |
toFixed(fractionDigits) |
1.5 | ES3 | Yes |
toLocaleString() |
1.5 | ES3 | Yes |
toPrecision(precision) |
1.5 | ES3 | Yes |
toString([radix]) |
1.1 | ES1 | Yes |
valueOf() |
1.1 | ES1 | Yes |
constructor |
1.1 | ES1 | Yes |
MAX_VALUE |
1.1 | ES1 | Yes |
MIN_VALUE |
1.1 | ES1 | Yes |
NaN |
1.1 | ES1 | Yes |
NEGATIVE_INFINITY |
1.1 | ES1 | Yes |
POSITIVE_INFINITY |
1.1 | ES1 | Yes |
prototype |
1.1 | ES1 | Yes |
| Math | 1.0 | ES1 | Yes |
abs(x) |
1.0 | ES1 | Yes |
acos(x) |
1.0 | ES1 | Yes |
asin(x) |
1.0 | ES1 | Yes |
atan(x) |
1.0 | ES1 | Yes |
atan2(y, x) |
1.0 | ES1 | Yes |
ceil(x) |
1.0 | ES1 | Yes |
cos(x) |
1.0 | ES1 | Yes |
exp(x) |
1.0 | ES1 | Yes |
floor(x) |
1.0 | ES1 | Yes |
log(x) |
1.0 | ES1 | Yes |
max([value1, value2, ... , valueN]) |
1.0 | ES1 | Yes |
min([value1, value2, ... , valueN]) |
1.0 | ES1 | Yes |
pow(x, y) |
1.0 | ES1 | Yes |
random() |
1.1 | ES1 | Yes |
round(x) |
1.0 | ES1 | Yes |
sin(x) |
1.0 | ES1 | Yes |
sqrt(x) |
1.0 | ES1 | Yes |
tan(x) |
1.0 | ES1 | Yes |
E |
1.0 | ES1 | Yes |
LN10 |
1.0 | ES1 | Yes |
LN2 |
1.0 | ES1 | Yes |
LOG2E |
1.0 | ES1 | Yes |
LOG10E |
1.0 | ES1 | Yes |
PI |
1.0 | ES1 | Yes |
SQRT1_2 |
1.0 | ES1 | Yes |
SQRT2 |
1.0 | ES1 | Yes |
| Date | 1.0 | ES1 | Yes |
getTime() |
1.0 | ES1 | Yes |
getFullYear() |
1.2 | ES1 | Yes |
getUTCFullYear() |
1.2 | ES1 | Yes |
getMonth() |
1.0 | ES1 | Yes |
getUTCMonth() |
1.2 | ES1 | Yes |
getDate() |
1.0 | ES1 | Yes |
getUTCDate() |
1.2 | ES1 | Yes |
getDay() |
1.0 | ES1 | Yes |
getUTCDay() |
1.2 | ES1 | Yes |
getHours() |
1.0 | ES1 | Yes |
getUTCHours() |
1.2 | ES1 | Yes |
getMinutes() |
1.0 | ES1 | Yes |
getUTCMinutes() |
1.2 | ES1 | Yes |
getSeconds() |
1.0 | ES1 | Yes |
getUTCSeconds() |
1.2 | ES1 | Yes |
getMilliseconds() |
1.2 | ES1 | Yes |
getUTCMilliseconds() |
1.2 | ES1 | Yes |
getTimezoneOffset() |
1.0 | ES1 | Yes |
parse(string) |
1.0 | ES1 | Yes |
setTime(time) |
1.0 | ES1 | Yes |
setMilliseconds(ms) |
1.2 | ES1 | Yes |
setUTCMilliseconds(ms) |
1.2 | ES1 | Yes |
setSeconds(sec [, ms]) |
1.0 | ES1 | Yes |
setUTCSeconds(sec [, ms]) |
1.2 | ES1 | Yes |
setMinutes(minute [, sec, ms]) |
1.0 | ES1 | Yes |
setUTCMinutes(minute [, sec, ms]) |
1.2 | ES1 | Yes |
setHours(hour [, minute, sec, ms]) |
1.0 | ES1 | Yes |
setUTCHours(hour [, minute, sec, ms]) |
1.2 | ES1 | Yes |
setDate(date) |
1.0 | ES1 | Yes |
setUTCDate(date) |
1.2 | ES1 | Yes |
setMonth(month [, date]) |
1.0 | ES1 | Yes |
setUTCMonth(month [, date]) |
1.2 | ES1 | Yes |
setFullYear(year [, month, date]) |
1.2 | ES1 | Yes |
setUTCFullYear(year [, month, date]) |
1.2 | ES1 | Yes |
toUTCString() |
1.2 | ES1 | Yes |
toGMTString() |
1.0 | ES3 | Yes |
getYear() |
1.0 | [ES1] | Yes |
setYear(year) |
1.0 | [ES1] | Yes |
toString() |
1.0 | ES1 | Yes |
toDateString() |
1.5 | ES3 | Yes |
toTimeString() |
1.5 | ES3 | Yes |
toLocaleString() |
1.0 | ES1 | Yes |
toLocaleDateString() |
1.5 | ES3 | Yes |
toLocaleTimeString() |
1.5 | ES3 | Yes |
UTC(year, month [, date, hours, minutes, seconds, ms]) |
1.0 | ES1 | Yes |
valueOf() |
1.1 | ES1 | Yes |
constructor |
1.1 | ES1 | Yes |
prototype |
1.1 | ES1 | Yes |
| RegExp | 1.2 | ES3 | Yes |
toString() |
1.2 | ES3 | Yes |
compile (pattern [, flags]) |
1.2 | - | Yes |
exec ([string]) |
1.2 | ES3 | Yes |
constructor |
1.2 | ES3 | Yes |
ignoreCase |
1.2 | ES3 | Yes |
input (also $_) |
1.2 | - | No |
global |
1.2 | ES3 | Yes |
lastIndex |
1.2 | ES3 | Yes |
lastMatch (also $&) |
1.2 | - | No |
lastParen (also $+) |
1.2 | - | No |
leftContext (also $`) |
1.2 | - | No |
multiline |
1.2 | ES3 | Yes |
multiline (also $*) |
1.2 | - | No |
notation (also $*) |
1.2 | - | No |
parenthesized substring matches ($1...$9) |
1.2 | - | Yes |
prototype |
1.2 | ES3 | Yes |
rightContext (also $') |
1.2 | - | No |
source |
1.2 | ES3 | Yes |
test ([string]) |
1.2 | ES3 | Yes |
| Error | 1.5 | ES3 | Yes |
toString() |
1.5 | ES3 | Yes |
constructor |
1.5 | ES3 | Yes |
message |
1.5 | ES3 | Yes |
name |
1.5 | ES3 | Yes |
prototype |
1.5 | ES3 | Yes |
Need help? Hit F1 anytime while using Opera to access our online help files, or go here.