Сравнение движков JavaScript - Comparison of JavaScript engines

В следующих таблицах сравнивается поддержка стандартов для некоторых известных Механизмы JavaScript / ECMAScript используется в веб-браузеры.

Пояснения к таблицам

Видеть Список движков ECMAScript для полного списка.

Значения

Они показывают уровень поддержки данного элемента в каждом движке. По умолчанию подразумевается самая последняя версия движка. Однако может быть указан конкретный номер версии; когда это означает полную поддержку, это первоначальная версия движка, полностью поддерживающая элемент.

Легенда
ЦенитьСмысл
даПолностью поддерживается
НетНикогда не поддерживался
ЧастичноеПоддерживаются только некоторые значения
НеверноНе во всех случаях реализовано правильно
ЭкспериментальныйМожет быть неполным или глючным
Ночная сборкаВ настоящее время в разработке; ожидается полная поддержка
Зависит отПоддерживается только для указанных условий
УпавшийБольше не поддерживается

Поддержка версии ECMAScript

Обзор поддержки версии ECMAScript
Механизм компоновки браузераТрезубецГекконWebKitПрестоМигать
Соответствующий движок JavaScriptJScript / ЧакраПаукОбезьянаJavaScriptCoreЛинейное письмо B / Futhark / CarakanV8
ECMAScript, выпуск 3да0.6да1.0да
ECMAScript, выпуск 55.02.0Частичноедада
ECMAScript, выпуск 6
Расширения JavaScript 1.5Нет0.6да1.0да
Расширения JavaScript 1.6
(без учета E4X )
Нет1.8ЧастичноеЧастичноеЧастичное
Расширения JavaScript 1.7Нет1.8.1НетЧастичноеНет
Расширения JavaScript 1.8Нет1.9ЧастичноеНетЧастичное
Расширения JavaScript 1.8.1Нет1.9.1НетНетНет
JScript .NET расширенияНетНетНетНетНет
ActionScript расширенияНетНетНетНетНет
E4XНетУпавший[1]НетНетНет

Стандартная библиотека

Глобальный объект

Реализация глобальных объектов
Глобальный объектТрезубецГекконWebKitПрестоМигать
Свойства значения
NaN4.00.6дадада
бесконечность4.00.6дадада
неопределенный5.50.6дадада
Свойства функции
eval (x)3.00.6дадада
parseInt (строка [, основание системы счисления])3.00.6дадада
parseFloat (строка)3.00.6дадада
isNaN (число)4.00.6дадада
isFinite (число)4.00.6дадада
Функции обработки URI
decodeURI (кодированныйURI)5.50.6дадада
decodeURIComponent (кодированныйURIComponent)5.50.6дадада
encodeURI (uri)5.50.6дадада
encodeURIComponent (uriComponent)5.50.6дадада
Свойства конструктора
Объект4.0дададада
Функция4.0дададада
Множество4.0дададада
Нить3.0дададада
Булево3.0дададада
Число3.0дададада
Дата3.0дададада
RegExp4.0дададада
Ошибка5.0дададада
EvalError5.0дададада
RangeError5.0дададада
ReferenceError5.0дададада
Синтаксическая ошибка5.0дададада
TypeError5.0дададада
URIError5.0дададада
Другие свойства
Математика3.0дададада
Дополнительные свойства
escape (строка)3.0дададада
unescape (строка)3.0дададада

Объект Object

Реализация объектных объектов
Объект ObjectТрезубецГекконWebKitПрестоМигать
Вызывается как функция
Объект ([значение])дадададада
Вызывается как конструктор
новый объект ([значение])4.0дададада
Характеристики
прототип4.0дададада
Свойства прототипа
конструктор4.0дададада
нанизывать()4.0дададада
toLocaleString ()4.0дададада
значение()4.0дададада
hasOwnProperty (V)5.5да3дада
isPrototypeOf (V)5.5да3дада
propertyIsEnumerable (V)5.5да3дада

Функциональный объект

Реализация функциональных объектов
Функциональный объектТрезубецГекконWebKitПрестоМигать
Вызывается как функция
Функция ([[p1 [, p2 [, ...]],] body])?дада?да
Вызывается как конструктор
новая функция ([[p1 [, p2 [, ...]],] body])4.01.0да1.0да
Характеристики
длина?1.0дадада
прототип4.01.0да1.0да
Свойства прототипа
длина?1.0да?да
конструктор4.01.0да1.0да
нанизывать()4.01.0да1.0да
применить (thisArg, argArray)4.01.0да1.0да
вызов (thisArg [, arg1 [, arg2 [, ...]]])4.01.0да1.0да
Свойства экземпляров
длина4.01.0да1.0да
прототип4.01.0да1.0да

Объект массива

Реализация объектов массива
Объект массиваТрезубецГекконWebKitПрестоМигать
Вызывается как функция
Массив ([элемент1 [, элемент2 [, ...]]])дадададада
Вызывается как конструктор
новый массив ([элемент1, элемент2 [, ...]])4.01.0да1.0да
новый массив (len)4.01.0да1.0да
Характеристики
прототип4.01.0да1.0да
Свойства прототипа
конструктор4.01.0да1.0да
нанизывать()4.01.0да1.0да
toLocaleString ()5.51.0да1.0да
concat ([элемент1 [, элемент2 [, ...]]])4.01.0да1.0да
присоединиться (разделитель)4.01.0да1.0да
поп ()5.51.0да1.0да
push ([элемент1 [, элемент2 [, ...]]])5.51.0да1.0да
обеспечить регресс()4.01.0да1.0да
сдвиг()5.51.0да1.0да
срез (начало, конец)4.01.0да1.0да
sort (comparefn)4.01.0да1.0да
splice (начало, deleteCount [, элемент1 [, элемент2 [, ...]]])5.51.0да1.0да
unshift ([элемент1 [, элемент2 [, ...]]])5.51.0да1.0да
indexOf (searchElement [, fromIndex])9.0[2]1.85222.1да
lastIndexOf (searchElement [, fromIndex])1.85222.1да
фильтр (обратный вызов [, thisObject])1.85222.1да
forEach (обратный вызов [, thisObject])1.85222.1да
каждые (обратный вызов [, thisObject])1.85222.1да
карта (обратный вызов [, thisObject])1.85222.1да
некоторые (обратный вызов [, thisObject])1.85222.1да
уменьшить (callback [, initialValue])1.95282.5.22да
reduceRight (callback [, initialValue])1.95282.5.22да
Свойства экземпляров
длина4.01.0да1.0да

Строковый объект

Реализация строковых объектов
Строковый объектТрезубецГекконWebKitПрестоМигать
Вызывается как функция
Строковое значение])дадададада
Вызывается как конструктор
новая строка ([значение])3.01.0да1.0да
Характеристики
прототип4.01.0да1.0да
fromCharCode ([char0 [, char1 [, ...]]])4.01.0да1.0да
Свойства прототипа
конструктор4.01.0да1.0да
нанизывать()3.01.0да1.0да
значение()3.01.0да1.0да
charAt (поз.)3.01.0да1.0да
charCodeAt (поз.)5.51.0да1.0да
concat ([строка1 [, строка2 [, ...]]])4.01.0да1.0да
indexOf (searchString, позиция)3.01.0да1.0да
lastIndexOf (searchString, позиция)3.01.0да1.0да
localeCompare (это)5.51.0да1.0да
совпадение (регулярное выражение)4.01.0да1.0да
replace (searchValue, replaceValue)3.01.0да1.0да
поиск (регулярное выражение)4.01.0да1.0да
срез (начало, конец)4.01.0да1.0да
разделить (разделитель, предел)4.01.0да1.0да
подстрока (начало, конец)3.01.0да1.0да
toLowerCase ()3.01.0да1.0да
toLocaleLowerCase (comparefn)3.01.0да1.0да
toUpperCase ()3.01.0да1.0да
toLocaleUpperCase ()3.01.0да1.0да
Дополнительные свойства прототипа
substr (начало, длина)4.01.0да1.0да
Свойства экземпляров
длина3.01.0да1.0да

Логический объект

Реализация логических объектов
Логический объектТрезубецГекконWebKitПрестоМигать
Вызывается как функция
Логическое ([значение])дадададада
Вызывается как конструктор
новое логическое значение ([значение])3.0дададада
Характеристики
прототип4.0дададада
Свойства прототипа
конструктор4.0дададада
нанизывать()4.0дададада
значение()4.0дададада

Номер объекта

Реализация числовых объектов
Номер объектаТрезубецГекконWebKitПресто
Вызывается как функция
Число ([значение])?дада?
Вызывается как конструктор
новый номер ([значение])3.01.0да1.0
Характеристики
прототип4.01.0да1.0
MAX_VALUE4.01.0да1.0
MIN_VALUE4.01.0да1.0
NaN4.01.0да1.0
NEGATIVE_INFINITY4.01.0да1.0
POSITIVE_INFINITY4.01.0да1.0
Свойства прототипа
конструктор4.01.0да1.0
toString ([основание системы счисления])4.01.0да1.0
toLocaleString ()5.51.0да1.0
значение()4.01.0да1.0
toFixed (фракцияЦифры)5.51.0да1.0
toExponential (фракцияЦифры)5.51.0да1.0
toPrecision (точность)5.51.0да1.0

Математический объект

Реализация математических объектов
Математический объектТрезубецГекконWebKitПресто
Свойства значения
E3.01.0да1.0
LN103.01.0да1.0
LN23.01.0да1.0
LOG2E3.01.0да1.0
LOG10E3.01.0да1.0
ЧИСЛО ПИдададада
SQRT1_23.01.0да1.0
SQRT2дададада
Свойства функции
абс (х)3.01.0да1.0
acos (x)3.01.0да1.0
asin (х)3.01.0да1.0
атан (х)3.01.0да1.0
atan2 (у, х)3.01.0да1.0
ceil (x)3.01.0да1.0
cos (x)3.01.0да1.0
ехр (х)3.01.0да1.0
этаж (x)3.01.0да1.0
журнал (х)3.01.0да1.0
max ([значение1 [, значение2 [, ...]]])3.01.0да1.0
min ([значение1 [, значение2 [, ...]]])3.01.0да1.0
pow (x, y)3.01.0да1.0
случайный()3.01.0да1.0
круглый (х)3.01.0да1.0
грех (х)3.01.0да1.0
sqrt (х)3.01.0да1.0
загар (х)3.01.0да1.0

Дата объекта

Реализация объектов даты
Дата объектаТрезубецГекконWebKitПресто
Вызывается как функция
Дата ([год [, месяц [, число [, часы [, минуты [, секунды [, мс]]]]]]])????
Вызывается как конструктор
новая дата (год, месяц [, число [, часы [, минуты [, секунды [, мс]]]]])4.01.0да1.0
новая дата (значение)4.01.0да1.0
новая дата ()4.01.0да1.0
Характеристики
прототип4.01.0да1.0
анализ (строка)3.01.0да1.0
UTC (год, месяц [, дата [, часы [, минуты [, секунды [, мс]]]]])3.01.0да1.0
Свойства прототипа
конструктор4.01.0да1.0
нанизывать()4.01.0да1.0
toDateString ()4.01.0да1.0
toTimeString ()4.01.0да1.0
toLocaleString ()4.01.0да1.0
toLocaleDateString ()4.01.0да1.0
toLocaleTimeString ()4.01.0да1.0
значение()4.01.0да1.0
getTime ()3.01.0да1.0
getFullYear ()4.01.0да1.0
getMonth ()3.01.0да1.0
getUTCMonth ()4.01.0да1.0
getDate ()3.01.0да1.0
getUTCDate ()4.01.0да1.0
getDay ()3.01.0да1.0
getUTCDay ()4.01.0да1.0
getHours ()3.01.0да1.0
getUTCHours ()4.01.0да1.0
getMinutes ()3.01.0да1.0
getUTCMinutes ()4.01.0да1.0
getSeconds ()3.01.0да1.0
getUTCSeconds ()4.01.0да1.0
getMilliseconds ()4.01.0да1.0
getUTCMilliseconds ()4.01.0да1.0
getTimezoneOffset ()4.01.0да1.0
setTime (время)3.01.0да1.0
setMilliseconds (мс)4.01.0да1.0
setUTCMilliseconds (мс)4.01.0да1.0
setSeconds (сек [, мс])3.01.0да1.0
setUTCSeconds (сек [, мс])4.01.0да1.0
setMinutes (мин [, сек [, мс]])3.01.0да1.0
setUTCMinutes (мин [, сек [, мс]])4.01.0да1.0
setHours (час [, мин [, сек [, мс]]])4.01.0да1.0
setUTCHours (час [, мин [, сек [, мс]]])4.01.0да1.0
setDate (дата)4.01.0да1.0
setUTCDate (дата)4.01.0да1.0
setMonth (месяц [, число])3.01.0да1.0
setUTCMonth (месяц [, число])4.01.0да1.0
setFullYear (год [, месяц [, число]])4.01.0да1.0
setUTCFullYear (год [, месяц [, число]])4.01.0да1.0
toUTCString ()4.01.0да1.0
Дополнительные свойства прототипа
getYear ()3.01.0да1.0
setYear (год)3.01.0да1.0
toGMTString ()4.01.0да1.0

Объект RegExp

Реализация объектов RegExp
Объект RegExpТрезубецГекконWebKitПресто
Вызывается как функция
RegExp (шаблон, флаги)????
Вызывается как конструктор
новый RegExp (шаблон, флаги)4.01.0да1.0
Характеристики
прототип4.01.0да1.0
Свойства прототипа
конструктор4.01.0да1.0
exec (строка)4.01.0да1.0
тест (строка)4.01.0да1.0
нанизывать()4.01.0да1.0
Свойства экземпляров
источник4.01.0да1.0
Глобальный4.01.0да1.0
ignoreCase5.51.0да1.0
многострочный5.51.0да1.0
lastIndex4.01.0да1.0

Объект ошибки

Реализация объектов ошибок
Объект ошибкиТрезубецГекконWebKitПресто
Вызывается как функция
Сообщение об ошибке)????
Вызывается как конструктор
новая ошибка (сообщение)5.01.0да1.0
Характеристики
прототип5.01.0да1.0
Свойства прототипа
конструктор5.01.0да1.0
имя5.51.0да1.0
сообщение5.51.0да1.0
нанизывать()5.01.0да1.0

Объекты NativeError

Реализация объектов NativeError
NativeError объектТрезубецГекконWebKitПресто
Вызывается как функция
EvalError (сообщение)?1.0да?
RangeError (сообщение)?1.0да?
ReferenceError (сообщение)?1.0да?
SyntaxError (сообщение)?1.0да?
TypeError (сообщение)?1.0да?
URIError (сообщение)?1.0да?
Вызывается как конструктор
new EvalError (сообщение)?1.0да?
новый RangeError (сообщение)?1.0да?
new ReferenceError (сообщение)?1.0да?
new SyntaxError (сообщение)?1.0да?
новый TypeError (сообщение)?1.0да?
новый URIError (сообщение)?1.0да?
Характеристики
прототип?1.0??
Свойства прототипа
конструктор?1.0??
имя?1.0да?
сообщение?1.0да?

Рекомендации

  1. ^ E4X, Mozilla
  2. ^ ECMAScript 5 Массивы, Microsoft, заархивировано из оригинал на 2010-06-27, получено 2010-06-24

дальнейшее чтение

внешняя ссылка

  • Webdevout - в основном охватывает браузеры Windows. Обширное тестирование ошибок.