WikiDer > Сравнение движков JavaScript
Эта статья должна быть обновлено.Июнь 2019) ( |
В следующих таблицах сравнивается поддержка стандартов для некоторых известных Механизмы JavaScript / ECMAScript используется в веб-браузеры.
Пояснения к таблицам
Видеть Список движков ECMAScript для полного списка.
Значения
Они показывают уровень поддержки данного элемента в каждом движке. По умолчанию подразумевается самая последняя версия движка. Однако может быть указан конкретный номер версии; когда это означает полную поддержку, это первоначальная версия движка, полностью поддерживающая элемент.
Ценить | Смысл |
---|---|
да | Полностью поддерживается |
Нет | Никогда не поддерживался |
Частичное | Поддерживаются только некоторые значения |
Неверно | Не во всех случаях реализовано правильно |
Экспериментальный | Может быть неполным или глючным |
Ночная сборка | В настоящее время в разработке; ожидается полная поддержка |
Зависит от | Поддерживается только для указанных условий |
Упавший | Больше не поддерживается |
Поддержка версии ECMAScript
Механизм компоновки браузера | Трезубец | Геккон | WebKit | Престо | Мигать |
---|---|---|---|---|---|
Соответствующий движок JavaScript | JScript / Чакра | ПаукОбезьяна | JavaScriptCore | Линейное письмо B / Futhark / Carakan | V8 |
ECMAScript, выпуск 3 | да | 0.6 | да | 1.0 | да |
ECMAScript, выпуск 5 | 5.0 | 2.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] | Нет | Нет | Нет |
Стандартная библиотека
Части этой статьи (те, что связаны с отсутствием Blink в нескольких разделах) должны быть обновлено.Май 2020 г.) ( |
Глобальный объект
Глобальный объект | Трезубец | Геккон | WebKit | Престо | Мигать |
---|---|---|---|---|---|
Свойства значения | |||||
NaN | 4.0 | 0.6 | да | да | да |
бесконечность | 4.0 | 0.6 | да | да | да |
неопределенный | 5.5 | 0.6 | да | да | да |
Свойства функции | |||||
eval (x) | 3.0 | 0.6 | да | да | да |
parseInt (строка [, основание системы счисления]) | 3.0 | 0.6 | да | да | да |
parseFloat (строка) | 3.0 | 0.6 | да | да | да |
isNaN (число) | 4.0 | 0.6 | да | да | да |
isFinite (число) | 4.0 | 0.6 | да | да | да |
Функции обработки URI | |||||
decodeURI (кодированныйURI) | 5.5 | 0.6 | да | да | да |
decodeURIComponent (кодированныйURIComponent) | 5.5 | 0.6 | да | да | да |
encodeURI (uri) | 5.5 | 0.6 | да | да | да |
encodeURIComponent (uriComponent) | 5.5 | 0.6 | да | да | да |
Свойства конструктора | |||||
Объект | 4.0 | да | да | да | да |
Функция | 4.0 | да | да | да | да |
Множество | 4.0 | да | да | да | да |
Нить | 3.0 | да | да | да | да |
Булево | 3.0 | да | да | да | да |
Число | 3.0 | да | да | да | да |
Дата | 3.0 | да | да | да | да |
RegExp | 4.0 | да | да | да | да |
Ошибка | 5.0 | да | да | да | да |
EvalError | 5.0 | да | да | да | да |
RangeError | 5.0 | да | да | да | да |
ReferenceError | 5.0 | да | да | да | да |
Синтаксическая ошибка | 5.0 | да | да | да | да |
TypeError | 5.0 | да | да | да | да |
URIError | 5.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.0 | 1.0 | да | 1.0 | да |
Характеристики | |||||
длина | ? | 1.0 | да | да | да |
прототип | 4.0 | 1.0 | да | 1.0 | да |
Свойства прототипа | |||||
длина | ? | 1.0 | да | ? | да |
конструктор | 4.0 | 1.0 | да | 1.0 | да |
нанизывать() | 4.0 | 1.0 | да | 1.0 | да |
применить (thisArg, argArray) | 4.0 | 1.0 | да | 1.0 | да |
вызов (thisArg [, arg1 [, arg2 [, ...]]]) | 4.0 | 1.0 | да | 1.0 | да |
Свойства экземпляров | |||||
длина | 4.0 | 1.0 | да | 1.0 | да |
прототип | 4.0 | 1.0 | да | 1.0 | да |
Объект массива
Объект массива | Трезубец | Геккон | WebKit | Престо | Мигать |
---|---|---|---|---|---|
Вызывается как функция | |||||
Массив ([элемент1 [, элемент2 [, ...]]]) | да | да | да | да | да |
Вызывается как конструктор | |||||
новый массив ([элемент1, элемент2 [, ...]]) | 4.0 | 1.0 | да | 1.0 | да |
новый массив (len) | 4.0 | 1.0 | да | 1.0 | да |
Характеристики | |||||
прототип | 4.0 | 1.0 | да | 1.0 | да |
Свойства прототипа | |||||
конструктор | 4.0 | 1.0 | да | 1.0 | да |
нанизывать() | 4.0 | 1.0 | да | 1.0 | да |
toLocaleString () | 5.5 | 1.0 | да | 1.0 | да |
concat ([элемент1 [, элемент2 [, ...]]]) | 4.0 | 1.0 | да | 1.0 | да |
присоединиться (разделитель) | 4.0 | 1.0 | да | 1.0 | да |
поп () | 5.5 | 1.0 | да | 1.0 | да |
push ([элемент1 [, элемент2 [, ...]]]) | 5.5 | 1.0 | да | 1.0 | да |
обеспечить регресс() | 4.0 | 1.0 | да | 1.0 | да |
сдвиг() | 5.5 | 1.0 | да | 1.0 | да |
срез (начало, конец) | 4.0 | 1.0 | да | 1.0 | да |
sort (comparefn) | 4.0 | 1.0 | да | 1.0 | да |
splice (начало, deleteCount [, элемент1 [, элемент2 [, ...]]]) | 5.5 | 1.0 | да | 1.0 | да |
unshift ([элемент1 [, элемент2 [, ...]]]) | 5.5 | 1.0 | да | 1.0 | да |
indexOf (searchElement [, fromIndex]) | 9.0[2] | 1.8 | 522 | 2.1 | да |
lastIndexOf (searchElement [, fromIndex]) | 1.8 | 522 | 2.1 | да | |
фильтр (обратный вызов [, thisObject]) | 1.8 | 522 | 2.1 | да | |
forEach (обратный вызов [, thisObject]) | 1.8 | 522 | 2.1 | да | |
каждые (обратный вызов [, thisObject]) | 1.8 | 522 | 2.1 | да | |
карта (обратный вызов [, thisObject]) | 1.8 | 522 | 2.1 | да | |
некоторые (обратный вызов [, thisObject]) | 1.8 | 522 | 2.1 | да | |
уменьшить (callback [, initialValue]) | 1.9 | 528 | 2.5.22 | да | |
reduceRight (callback [, initialValue]) | 1.9 | 528 | 2.5.22 | да | |
Свойства экземпляров | |||||
длина | 4.0 | 1.0 | да | 1.0 | да |
Строковый объект
Строковый объект | Трезубец | Геккон | WebKit | Престо | Мигать |
---|---|---|---|---|---|
Вызывается как функция | |||||
Строковое значение]) | да | да | да | да | да |
Вызывается как конструктор | |||||
новая строка ([значение]) | 3.0 | 1.0 | да | 1.0 | да |
Характеристики | |||||
прототип | 4.0 | 1.0 | да | 1.0 | да |
fromCharCode ([char0 [, char1 [, ...]]]) | 4.0 | 1.0 | да | 1.0 | да |
Свойства прототипа | |||||
конструктор | 4.0 | 1.0 | да | 1.0 | да |
нанизывать() | 3.0 | 1.0 | да | 1.0 | да |
значение() | 3.0 | 1.0 | да | 1.0 | да |
charAt (поз.) | 3.0 | 1.0 | да | 1.0 | да |
charCodeAt (поз.) | 5.5 | 1.0 | да | 1.0 | да |
concat ([строка1 [, строка2 [, ...]]]) | 4.0 | 1.0 | да | 1.0 | да |
indexOf (searchString, позиция) | 3.0 | 1.0 | да | 1.0 | да |
lastIndexOf (searchString, позиция) | 3.0 | 1.0 | да | 1.0 | да |
localeCompare (это) | 5.5 | 1.0 | да | 1.0 | да |
совпадение (регулярное выражение) | 4.0 | 1.0 | да | 1.0 | да |
replace (searchValue, replaceValue) | 3.0 | 1.0 | да | 1.0 | да |
поиск (регулярное выражение) | 4.0 | 1.0 | да | 1.0 | да |
срез (начало, конец) | 4.0 | 1.0 | да | 1.0 | да |
разделить (разделитель, предел) | 4.0 | 1.0 | да | 1.0 | да |
подстрока (начало, конец) | 3.0 | 1.0 | да | 1.0 | да |
toLowerCase () | 3.0 | 1.0 | да | 1.0 | да |
toLocaleLowerCase (comparefn) | 3.0 | 1.0 | да | 1.0 | да |
toUpperCase () | 3.0 | 1.0 | да | 1.0 | да |
toLocaleUpperCase () | 3.0 | 1.0 | да | 1.0 | да |
Дополнительные свойства прототипа | |||||
substr (начало, длина) | 4.0 | 1.0 | да | 1.0 | да |
Свойства экземпляров | |||||
длина | 3.0 | 1.0 | да | 1.0 | да |
Логический объект
Логический объект | Трезубец | Геккон | WebKit | Престо | Мигать |
---|---|---|---|---|---|
Вызывается как функция | |||||
Логическое ([значение]) | да | да | да | да | да |
Вызывается как конструктор | |||||
новое логическое значение ([значение]) | 3.0 | да | да | да | да |
Характеристики | |||||
прототип | 4.0 | да | да | да | да |
Свойства прототипа | |||||
конструктор | 4.0 | да | да | да | да |
нанизывать() | 4.0 | да | да | да | да |
значение() | 4.0 | да | да | да | да |
Номер объекта
Номер объекта | Трезубец | Геккон | WebKit | Престо |
---|---|---|---|---|
Вызывается как функция | ||||
Число ([значение]) | ? | да | да | ? |
Вызывается как конструктор | ||||
новый номер ([значение]) | 3.0 | 1.0 | да | 1.0 |
Характеристики | ||||
прототип | 4.0 | 1.0 | да | 1.0 |
MAX_VALUE | 4.0 | 1.0 | да | 1.0 |
MIN_VALUE | 4.0 | 1.0 | да | 1.0 |
NaN | 4.0 | 1.0 | да | 1.0 |
NEGATIVE_INFINITY | 4.0 | 1.0 | да | 1.0 |
POSITIVE_INFINITY | 4.0 | 1.0 | да | 1.0 |
Свойства прототипа | ||||
конструктор | 4.0 | 1.0 | да | 1.0 |
toString ([основание системы счисления]) | 4.0 | 1.0 | да | 1.0 |
toLocaleString () | 5.5 | 1.0 | да | 1.0 |
значение() | 4.0 | 1.0 | да | 1.0 |
toFixed (фракцияЦифры) | 5.5 | 1.0 | да | 1.0 |
toExponential (фракцияЦифры) | 5.5 | 1.0 | да | 1.0 |
toPrecision (точность) | 5.5 | 1.0 | да | 1.0 |
Математический объект
Математический объект | Трезубец | Геккон | WebKit | Престо |
---|---|---|---|---|
Свойства значения | ||||
E | 3.0 | 1.0 | да | 1.0 |
LN10 | 3.0 | 1.0 | да | 1.0 |
LN2 | 3.0 | 1.0 | да | 1.0 |
LOG2E | 3.0 | 1.0 | да | 1.0 |
LOG10E | 3.0 | 1.0 | да | 1.0 |
ЧИСЛО ПИ | да | да | да | да |
SQRT1_2 | 3.0 | 1.0 | да | 1.0 |
SQRT2 | да | да | да | да |
Свойства функции | ||||
абс (х) | 3.0 | 1.0 | да | 1.0 |
acos (x) | 3.0 | 1.0 | да | 1.0 |
asin (х) | 3.0 | 1.0 | да | 1.0 |
атан (х) | 3.0 | 1.0 | да | 1.0 |
atan2 (у, х) | 3.0 | 1.0 | да | 1.0 |
ceil (x) | 3.0 | 1.0 | да | 1.0 |
cos (x) | 3.0 | 1.0 | да | 1.0 |
ехр (х) | 3.0 | 1.0 | да | 1.0 |
этаж (x) | 3.0 | 1.0 | да | 1.0 |
журнал (х) | 3.0 | 1.0 | да | 1.0 |
max ([значение1 [, значение2 [, ...]]]) | 3.0 | 1.0 | да | 1.0 |
min ([значение1 [, значение2 [, ...]]]) | 3.0 | 1.0 | да | 1.0 |
pow (x, y) | 3.0 | 1.0 | да | 1.0 |
случайный() | 3.0 | 1.0 | да | 1.0 |
круглый (х) | 3.0 | 1.0 | да | 1.0 |
грех (х) | 3.0 | 1.0 | да | 1.0 |
sqrt (х) | 3.0 | 1.0 | да | 1.0 |
загар (х) | 3.0 | 1.0 | да | 1.0 |
Дата объекта
Дата объекта | Трезубец | Геккон | WebKit | Престо |
---|---|---|---|---|
Вызывается как функция | ||||
Дата ([год [, месяц [, число [, часы [, минуты [, секунды [, мс]]]]]]]) | ? | ? | ? | ? |
Вызывается как конструктор | ||||
новая дата (год, месяц [, число [, часы [, минуты [, секунды [, мс]]]]]) | 4.0 | 1.0 | да | 1.0 |
новая дата (значение) | 4.0 | 1.0 | да | 1.0 |
новая дата () | 4.0 | 1.0 | да | 1.0 |
Характеристики | ||||
прототип | 4.0 | 1.0 | да | 1.0 |
анализ (строка) | 3.0 | 1.0 | да | 1.0 |
UTC (год, месяц [, дата [, часы [, минуты [, секунды [, мс]]]]]) | 3.0 | 1.0 | да | 1.0 |
Свойства прототипа | ||||
конструктор | 4.0 | 1.0 | да | 1.0 |
нанизывать() | 4.0 | 1.0 | да | 1.0 |
toDateString () | 4.0 | 1.0 | да | 1.0 |
toTimeString () | 4.0 | 1.0 | да | 1.0 |
toLocaleString () | 4.0 | 1.0 | да | 1.0 |
toLocaleDateString () | 4.0 | 1.0 | да | 1.0 |
toLocaleTimeString () | 4.0 | 1.0 | да | 1.0 |
значение() | 4.0 | 1.0 | да | 1.0 |
getTime () | 3.0 | 1.0 | да | 1.0 |
getFullYear () | 4.0 | 1.0 | да | 1.0 |
getMonth () | 3.0 | 1.0 | да | 1.0 |
getUTCMonth () | 4.0 | 1.0 | да | 1.0 |
getDate () | 3.0 | 1.0 | да | 1.0 |
getUTCDate () | 4.0 | 1.0 | да | 1.0 |
getDay () | 3.0 | 1.0 | да | 1.0 |
getUTCDay () | 4.0 | 1.0 | да | 1.0 |
getHours () | 3.0 | 1.0 | да | 1.0 |
getUTCHours () | 4.0 | 1.0 | да | 1.0 |
getMinutes () | 3.0 | 1.0 | да | 1.0 |
getUTCMinutes () | 4.0 | 1.0 | да | 1.0 |
getSeconds () | 3.0 | 1.0 | да | 1.0 |
getUTCSeconds () | 4.0 | 1.0 | да | 1.0 |
getMilliseconds () | 4.0 | 1.0 | да | 1.0 |
getUTCMilliseconds () | 4.0 | 1.0 | да | 1.0 |
getTimezoneOffset () | 4.0 | 1.0 | да | 1.0 |
setTime (время) | 3.0 | 1.0 | да | 1.0 |
setMilliseconds (мс) | 4.0 | 1.0 | да | 1.0 |
setUTCMilliseconds (мс) | 4.0 | 1.0 | да | 1.0 |
setSeconds (сек [, мс]) | 3.0 | 1.0 | да | 1.0 |
setUTCSeconds (сек [, мс]) | 4.0 | 1.0 | да | 1.0 |
setMinutes (мин [, сек [, мс]]) | 3.0 | 1.0 | да | 1.0 |
setUTCMinutes (мин [, сек [, мс]]) | 4.0 | 1.0 | да | 1.0 |
setHours (час [, мин [, сек [, мс]]]) | 4.0 | 1.0 | да | 1.0 |
setUTCHours (час [, мин [, сек [, мс]]]) | 4.0 | 1.0 | да | 1.0 |
setDate (дата) | 4.0 | 1.0 | да | 1.0 |
setUTCDate (дата) | 4.0 | 1.0 | да | 1.0 |
setMonth (месяц [, число]) | 3.0 | 1.0 | да | 1.0 |
setUTCMonth (месяц [, число]) | 4.0 | 1.0 | да | 1.0 |
setFullYear (год [, месяц [, число]]) | 4.0 | 1.0 | да | 1.0 |
setUTCFullYear (год [, месяц [, число]]) | 4.0 | 1.0 | да | 1.0 |
toUTCString () | 4.0 | 1.0 | да | 1.0 |
Дополнительные свойства прототипа | ||||
getYear () | 3.0 | 1.0 | да | 1.0 |
setYear (год) | 3.0 | 1.0 | да | 1.0 |
toGMTString () | 4.0 | 1.0 | да | 1.0 |
Объект RegExp
Объект RegExp | Трезубец | Геккон | WebKit | Престо |
---|---|---|---|---|
Вызывается как функция | ||||
RegExp (шаблон, флаги) | ? | ? | ? | ? |
Вызывается как конструктор | ||||
новый RegExp (шаблон, флаги) | 4.0 | 1.0 | да | 1.0 |
Характеристики | ||||
прототип | 4.0 | 1.0 | да | 1.0 |
Свойства прототипа | ||||
конструктор | 4.0 | 1.0 | да | 1.0 |
exec (строка) | 4.0 | 1.0 | да | 1.0 |
тест (строка) | 4.0 | 1.0 | да | 1.0 |
нанизывать() | 4.0 | 1.0 | да | 1.0 |
Свойства экземпляров | ||||
источник | 4.0 | 1.0 | да | 1.0 |
Глобальный | 4.0 | 1.0 | да | 1.0 |
ignoreCase | 5.5 | 1.0 | да | 1.0 |
многострочный | 5.5 | 1.0 | да | 1.0 |
lastIndex | 4.0 | 1.0 | да | 1.0 |
Объект ошибки
Объект ошибки | Трезубец | Геккон | WebKit | Престо |
---|---|---|---|---|
Вызывается как функция | ||||
Сообщение об ошибке) | ? | ? | ? | ? |
Вызывается как конструктор | ||||
новая ошибка (сообщение) | 5.0 | 1.0 | да | 1.0 |
Характеристики | ||||
прототип | 5.0 | 1.0 | да | 1.0 |
Свойства прототипа | ||||
конструктор | 5.0 | 1.0 | да | 1.0 |
имя | 5.5 | 1.0 | да | 1.0 |
сообщение | 5.5 | 1.0 | да | 1.0 |
нанизывать() | 5.0 | 1.0 | да | 1.0 |
Объекты 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 | да | ? |
Рекомендации
- ^ E4X, Mozilla
- ^ ECMAScript 5 Массивы, Microsoft, заархивировано из оригинал на 2010-06-27, получено 2010-06-24
дальнейшее чтение
- Поддержка объекта ECMAScript в Opera
- Тесты JavaScript и таблицы совместимости
- Таблица совместимости ECMAScript 6
внешняя ссылка
- Webdevout - в основном охватывает браузеры Windows. Обширное тестирование ошибок.