Проверка JavaScript приводит к поддержке

Я читал о ключевом слове урожая в JavaScript, и я должен использовать его в своем проекте. Я считал, что это ключевое слово было реализовано, начав с определенной версии JS, таким образом, я думаю, что старые браузеры не поддерживают его (право?).

Существует ли способ проверить, поддерживается ли ключевое слово урожая? или по крайней мере существует ли способ проверить, больше ли версия JS или равна, чем тот, который реализует то ключевое слово (1.7)?

28
задан hippietrail 12 October 2014 в 00:19
поделиться

2 ответа

yield вводит новый синтаксис в JavaScript. Вы не сможете использовать yield, пока не укажете, что вам нужен новый синтаксис JavaScript, включив номер версии в атрибут script type (*).

Когда вы указываете версию скрипта, только браузеры, поддерживающие данную версию, будут выполнять блок. Таким образом, только Firefox, но не IE, Opera или WebKit, выполнит верхний блок в:

<script type="text/javascript;version=1.7">
    function x() {
        yield 0;
    }
    var canyield= true;
</script>
<script type="text/javascript">
    if (!window.canyield) {
        // do some fallback for other browsers
    }
</script>

(*: обратите внимание, что тип и версия, указанные в атрибуте type, определяют только то, будут ли внешние скрипты извлечены, выполнены, и режим выполнения. Content-Type скрипта, к сожалению, полностью игнорируется.)

.
14
ответ дан 28 November 2019 в 02:45
поделиться

Строго говоря, только браузеры Mozilla поддерживают JavaScript. Все браузеры должны поддерживать ECMAScript, а старые версии JavaScript являются реализацией ECMAScript.

На этом сайте перечислено, какие версии Javascript поддерживаются в каких версиях браузеров.

MSIE использует JScript. В JScript нет функции yield. Поэтому использование yield ограничит поддержку браузером вашей страницы.

Попробуйте https://developer.mozilla.org/en/New_in_JavaScript_1.7 для получения информации об использовании JavaScript 1.7

6
ответ дан 28 November 2019 в 02:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: