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 Presto 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 Software is actively participating with ECMA TC39 in developing successors to the current spec, and 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.