ES7, ES8, ES9, ES10 Поддержка браузера

Довольно легко проверить данные о поддержке браузерами ECMAScript2015 (ES6), но я обнаружил, что довольно сложно иметь одинаково четкую таблицу для всех следующих версий ES (от ES7 до ES10).

У Mozilla есть некоторая информация на их веб-сайте, возможно, чтобы увидеть, что ES7 и ES8 полностью поддерживаются, ES9 все еще имеет некоторые проблемы, а ES10 поддерживается в последних версиях.

Я также могу предположить, что IE11 никогда не развивался после ES5.

Я ничего не нашел для других браузеров, только украденная информация тут и там.

Кто-нибудь знает, какой сейчас уровень поддержки?


person Alvin Sartor    schedule 16.05.2020    source источник


Ответы (2)


Поставщики браузеров реализуют не определенные версии, а определенные функции. Почти в каждом современном браузере по-прежнему отсутствуют функции из ES2017-ES2020. Следовательно, нет и не будет таблицы, в которой вы можете увидеть сопоставление версии ES с версией браузера.

Но это не проблема, потому что вы, как разработчик, делаете то же самое. Вы используете функции, а не версии ECMAScript. Caniuse по-прежнему является отличным ресурсом для проверки поддержки отдельных функций. Если вас не устраивает представление данных на Caniuse, возможно, лучше использовать эти таблицы совместимости. для тебя. Кроме того, вы можете использовать полифиллы и Babel для переноса новых функций в более старые среды выполнения.

person str    schedule 16.05.2020
comment
Я бы проголосовал за это, если бы вопрос не был не по теме. - person Bergi; 16.05.2020
comment
@Bergi Да, я тоже был на грани близкого голосования. - person str; 16.05.2020
comment
+1 за ссылку на таблицы совместимости, но для меня (январь 2021 г.) она не показывает функций es2017, которые не поддерживаются в последних версиях Chrome, FF и Edge, поэтому кажется, что можно сделать какое-то «сопоставление версии ES с браузером»? Это правда, как вы говорите, что разработчики могут использовать функции, а не версии, но, например, в TypeScript tsconfig 'lib' мы должны выбрать es2017 или es2018 и т. д. . исходя из того, что может обрабатывать наш минимально поддерживаемый браузер. - person Marcus; 05.01.2021

Причина проста: они его не поддерживают. Все, что выше ES6, все еще находится в разработке. Поскольку ES6 все еще принимается, и не все браузеры поддерживают все, у них нет причин стремиться к ES7. Если вы хотите использовать > функции ES7, я бы посоветовал изучить Babel, поскольку есть способы использовать ES7 и выше и скомпилировать его обратно в ES5, чтобы даже IE поддерживал его.

Надеюсь, что это поможет, не стесняйтесь комментировать с вопросами!

person Antoni Silvestrovič    schedule 16.05.2020