Как узнать, какую версию Javascript я использую?


97

Я просто читаю эту документацию по Javascript 1.2, но мне интересно, какая версия Javascript используется в самых популярных браузерах.

http://www.tutorialspoint.com/javascript/javascript_nested_functions.htm


Ответы:


42

Википедия (или, скорее, сообщество в Википедии) хранит здесь довольно неплохой обновленный список .

  • Большинство браузеров используют версию 1.5 (хотя в них есть функции более поздних версий)
  • Mozilla прогрессирует с каждым выпуском точки (они поддерживают стандарт, так что это неудивительно)
  • Firefox 4 работает на JavaScript 1.8.5
  • Другой большой нестандартный путь - IE9 - он реализует ECMAScript 5, но не реализует все функции JavaScript 1.8.5 (не уверен, как они называют эту версию JScript, движок под кодовым названием Chakra , но пока ).

3
Firefox 4 (JavaScript (TM) 1.8.5) и IE9 (JScript 9) осуществлять много ECMAScript 5 функций, но рассмотрим, например , JavaScript (TM) 1.8 , является полным из нестандартных функций, которые не доступны в IE9 (и они не являются частью спецификации ES5.), это расширения Mozilla .
Кристиан С. Сальвадо,

@CMS - отличная точка зрения на то, чего он не реализует, попытался улучшить вышеперечисленное, учитывая, что это поднялось наверх.
Ник Крейвер

2
Спасибо, IMO - важный момент, чтобы подчеркнуть, что JScript! == JavaScript (TM) и что номера версий Mozilla JS почти бессмысленны для других реализаций ...
Кристиан С. Сальвадо

1
Как бы то ни было, похоже, что «довольно хороший обновленный список Википедии» перестал быть таким примерно в то время, когда был предоставлен этот ответ. Похоже, что он не обновлялся с ~ 2010 ...
NetXpert

82

Щелкните эту ссылку, чтобы узнать, какую версию использует ваш БРАУЗЕР: http://jsfiddle.net/Ac6CT/

Вы должны иметь возможность фильтровать, используя теги скрипта для каждой версии JS.

<script type="text/javascript">
  var jsver = 1.0;
</script>
<script language="Javascript1.1">
  jsver = 1.1;
</script>
<script language="Javascript1.2">
  jsver = 1.2;
</script>
<script language="Javascript1.3">
  jsver = 1.3;
</script>
<script language="Javascript1.4">
  jsver = 1.4;
</script>
<script language="Javascript1.5">
  jsver = 1.5;
</script>
<script language="Javascript1.6">
  jsver = 1.6;
</script>
<script language="Javascript1.7">
  jsver = 1.7;
</script>
<script language="Javascript1.8">
  jsver = 1.8;
</script>
<script language="Javascript1.9">
  jsver = 1.9;
</script>

<script type="text/javascript">
  alert(jsver);
</script>

Мои отчеты Chrome 1.7

Явно украдено с: http://javascript.about.com/library/bljver.htm


5
А как насчет второстепенных релизов? например, 1.8.1, 1.8.2, 1.8.3 ... вы видите, насколько это утомительно.
Ник Крейвер

12
Вам было бы лучше использовать обнаружение функций.
jwueller

2
1.8.1 например добавлена ​​встроенная JSONподдержка, 1.8.5 соответствует ECMAScript 5 ... это важные вехи :)
Ник Крейвер

3
Итак, это говорит мне, что Chrome был 1.7, но имеет встроенную поддержку JSON. Возможно, правильный ответ на этот вопрос заключается в том, что версия javascript в браузере не обязательно содержит очень много полезной информации.
Alex Wayne

1
Mozilla поддерживает javascript до версии 1.8, но синтаксис отличается:<script type="application/javascript;version=1.7"/>
Yukulélé,

18

В chrome вы можете легко найти не только свою JS-версию, но и флэш-версию. Все, что вам нужно, это ввести chrome://version/в командной строке, и вы получите что-то вроде этого:

введите описание изображения здесь


9
ха-ха! Это не версия JS, а номер версии движка V8. Кроме того, сегодня, в 2015 году, они перешли на Blink в качестве предпочтительного движка
Кристиан М. Раймондс,

@ ChristianM.Raymonds, тогда почему мой Chrome v 46.0.2490.86в ноябре 2015 года все еще отображается V8 4.6.85.31?
Сальвадор Дали,

@Savador Dali OP спрашивал о версии JS - прочтите версию языка JavaScript, понятную движку, а не версию движка. Все, что выше Chrome 28, использует Blink. Пожалуйста, проведите свое исследование.
Christian M. Raymonds

1
@ SalvadorDali - это версия движка V8 (движок Javascript), а НЕ версия Javascript.
nanosoft

4
@ ChristianM.Raymonds - Blink и V8 - две очень разные вещи. V8 - это движок JS, а Blink - веб-движок, а Chrome использует оба. Это два отдельных движка для двух очень разных вещей, и использование одного никоим образом не исключает друг друга.
nanosoft

6

Вместо того, чтобы выяснять, какую версию вы используете, вы можете перефразировать свой вопрос так: «какой версии скрипта ECMA соответствует движок JavaScript / JSscript моего браузера».

Для IE:

alert(@_jscript_version);      //IE

Обратитесь к ответу Squeegy для версий, отличных от IE :)


3
Изменил ли Squeegy имена пользователей или удалил свой ответ? Здесь нет ответов от пользователя Squeegy.
Питер Хансен

@PeterHansen: Ой, должен был быть связан с ответом :)
Робин Мабен,

а браузеры делают это лишь частично, вы можете найти 97% ES6, 39% ES7, kangax.github.io/compat-table/es6 , и даже эти таблицы не совсем верны.
prosti

Это работает, только если Conditional Compilationон включен, поэтому может не работать на 100%, если у вас есть
системный

1

Все современные браузеры используют как минимум версию 1.5:
http://en.wikipedia.org/wiki/ECMAScript#Dialect

Что касается вашего учебного сайта, информация там кажется крайне устаревшей , я прошу вас зайти в MDC и прочитать их Руководство:
https://developer.mozilla.org/en/JavaScript/Guide

Вы все равно можете не упустить возможности, для которых требуется версия 1.6или выше, так как это может доставить Internet Explorer некоторые проблемы.


«Ваш браузер устарел. Установите новый браузер». ... Список браузеров здесь ...
1,21 гигаватт

0

JavaScript 1.2 был представлен в Netscape Navigator 4 в 1997 году. Этот номер версии имел значение только для браузеров Netscape. Например, реализация Microsoft (используемая в Internet Explorer) называется JScript и имеет собственную нумерацию версий, не имеющую отношения к нумерации Netscape.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.