--- title: New in JavaScript 1.8 slug: Web/JavaScript/New_in_JavaScript/1.8 tags: - Версии translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.8 ---
{{jsSidebar("New_in_JS")}}

Следующее описание относится к  JavaScript 1.8. Эта версия была включена в Firefox 3 является частью Gecko 1.9. {{ Bug("380236") }} – здесь вы можете просмотреть исправленные в процессе разработки JavaScript 1.8 баги.

Использование JavaScript 1.8

Чтобы воспользоваться преимуществами JavaScript 1.8, используйте следующий синтаксис подключения:

 <script type="application/javascript;version=1.8"> ... your code ... </script>

Альтернативным методом является использование устаревшего аттрибута language тэга script. Для этого необходимо установить ему значение JavaScript1.8. Этот способ не рекомендуется к применению.

При использовании JavaScript шеллов, JavaScript XPCOM компонент, или XUL <script> элементов, последняя версия JavaScript (JS1.8 в Mozilla 1.9) будет использована автоматически ({{ Bug(381031) }}, {{ Bug(385159) }}).

Нововведения, которые используют ключевые слова yield и let требуют использования Javascript версии 1.7 или выше, потому как существующий код может использовать эти ключевые слова как названия переменных или функций. Остальные нововведения (например, генераторы) могут быть использованы без указания версии JavaScript.

Новое в JavaScript 1.8

Изменения в JavaScript 1.8

Изменения в деструктивном присваивании

Багфикс, который был добавлен в  JavaScript 1.8, решает проблему связанную с деструктивным присваиванием, которое было введено в JavaScript 1.7.  Изменен механизм  деструктуризации массивов при использовании for (var [a,b] in array). Ранее был доступен вызов в форме, описанной выше, однако это вызывало некорректное поведение цикла при работе с итераторами. Проблема решена ({{ Bug("366941") }}). Теперь следует использовать следующий синтаксис: for ( var [key, value] in Iterator(array)).