JScript - JScript

JScript
Jscript icon.gif
Разработчик Microsoft
Впервые появился 1996 ; 25 лет назад ( 1996 )
Стабильный выпуск
9.0 / март 2011 г.
Печатная дисциплина Динамичный , слабый , утка
Операционные системы Майкрософт Виндоус
Расширения имени файла .js , .jse , .wsf , .wsc ( .htm , .html , .hta , .asp ).
Веб-сайт MSDN .microsoft .com / Библиотека / hbxc2t98 .aspx
Основные реализации
Активные сценарии , JScript .NET

JScript является диалектом от Microsoft на ECMAScript стандарт , который используется в Microsoft «s Internet Explorer .

JScript реализован как движок активных сценариев . Это означает, что его можно «подключить» к приложениям OLE Automation, которые поддерживают активные сценарии, таким как Internet Explorer , Active Server Pages и Windows Script Host . Это также означает, что такие приложения могут использовать несколько языков Active Scripting, например JScript, VBScript или PerlScript .

JScript впервые был поддержан в браузере Internet Explorer 3.0, выпущенном в августе 1996 года. Его последней версией является JScript 9.0, включенный в Internet Explorer 9.

JScript 10.0 - это отдельный диалект, также известный как JScript .NET , который добавляет несколько новых функций из заброшенной четвертой редакции стандарта ECMAScript. Он должен быть скомпилирован для .NET Framework версии 2 или версии 4, но аннотации статического типа не являются обязательными.

Сравнение с JavaScript

Как объяснил Дуглас Крокфорд в своем выступлении под названием The JavaScript Programming Language на YUI Theater ,

[Microsoft] не хотела иметь дело с Sun Microsystems по вопросу о товарных знаках, поэтому они назвали свою реализацию JScript. Многие люди думают, что JScript и JavaScript - это разные, но похожие языки. Это не так. Это просто разные названия для одного и того же языка, и причина, по которой они разные, заключалась в том, чтобы обойти проблемы с товарными знаками.

Однако JScript поддерживает условную компиляцию , которая позволяет программисту выборочно выполнять код в комментариях блока . Это расширение стандарта ECMAScript , которое не поддерживается в других реализациях JavaScript, что делает приведенное выше утверждение не полностью верным, хотя условная компиляция больше не поддерживается в стандартном режиме Internet Explorer 11.

Другие внутренние различия в реализации между JavaScript и JScript в какой-то момент отмечаются в Microsoft Developer Network (MSDN). Хотя значением типа по умолчанию для элемента сценария в Internet Explorer является JavaScript, а его псевдонимом был JScript. При очевидном переходе от JScript к JavaScript в Интернете Руководство разработчика Microsoft Edge ссылается на веб-библиотеку Mozilla MDN как на исчерпывающую документацию. С октября 2017 года страницы Microsoft MSDN для сценариев в Internet Explorer также перенаправляются туда. Эта информация может не включать объекты JScript, такие как Enumerator, которые перечислены в справочнике по языку JavaScript в Microsoft Docs. Они предоставляют дополнительные функции, которые не включены в стандарты ECMA, независимо от того, поддерживаются ли они в браузере Edge или его предшественнике.

Версии

JScript (классический COM)

Исходный JScript - это движок активных сценариев . Как и другие языки Active Scripting, он построен на платформе COM / OLE Automation и предоставляет возможности написания сценариев для хост-приложений.

Это версия, используемая при размещении JScript внутри веб-страницы, отображаемой Internet Explorer , в приложении HTML до IE9 , а также в классических сценариях ASP , Windows Script Host и других средах автоматизации .

JScript иногда называют «классическим JScript» или «активным скриптом JScript», чтобы отличить его от более новых версий на основе .NET.

Некоторые версии JScript доступны для нескольких версий Internet Explorer и Windows. Например, JScript 5.7 был представлен в Internet Explorer 7.0 и также установлен для Internet Explorer 6.0 с Windows XP Service Pack 3 , тогда как JScript 5.8 был представлен в Internet Explorer 8.0 и также устанавливается с Internet Explorer 6.0 в Windows Mobile 6.5 .

Реализация Microsoft ECMAScript 5th Edition в Windows 8 Consumer Preview называется JavaScript, а соответствующая бета-версия Visual Studio 11 Express включает «совершенно новый» полнофункциональный редактор JavaScript с улучшениями IntelliSense для синтаксиса HTML5 и ECMAScript 5 , аннотации VSDOC для нескольких перегрузки, упрощенная конфигурация DOM , сопоставление скобок, сворачиваемая структура и «перейти к определению».

Версия Дата Представлено с На основе Аналогичная версия JavaScript
1.0 Август 1996 г. Internet Explorer 3.0 Netscape JavaScript 1.0
2.0 Январь 1997 г. Windows IIS 3.0 Netscape JavaScript 1.1
3.0 Октябрь 1997 г. Internet Explorer 4.0 ECMA-262 1-е издание 1.3
4.0 Visual Studio 6.0 (в составе Visual InterDev ) ECMA-262 1-е издание 1.3
5.0 Март 1999 г. Internet Explorer 5.0 ECMA-262 2-е издание 1.4
5.1 Internet Explorer 5.01 ECMA-262 2-е издание 1.4
5.5 Июль 2000 г. Internet Explorer 5.5 и Windows CE 4.2 ECMA-262 3-е издание 1.5
5,6 Октябрь 2001 г. Internet Explorer 6.0 и Windows CE 5.0 ECMA-262 3-е издание 1.5
5,7 Ноя 2006 Internet Explorer 7.0 ECMA-262 3-е издание + ECMA-327 (ES-CP) 1.5
5,8 Март 2009 г. Internet Explorer 8.0 и Internet Explorer Mobile 6.0 ECMA-262 3-е издание + ECMA-327 (ES-CP) + JSON (RFC 4627) 3 1.5

JScript также доступен в Windows CE (включен в Windows Mobile, опционально в Windows Embedded CE). В версии Windows CE отсутствует активная отладка.

Управляемый JScript

Управляемый JScript - это реализация JScript для среды выполнения динамического языка , он является частью динамических языков Microsoft для .NET вместе с IronRuby , IronPython и Dynamic Visual Basic . В отличие от JScript .NET, который менее динамичен, чем исходный JScript, но обеспечивает совместимость с CLS , управляемый JScript разработан на основе DLR и предоставляет функции, необходимые для сценариев сценариев.

Хотя в настоящее время он в первую очередь предназначен для использования в Silverlight и ASP.NET, его также можно легко встроить в любое приложение .NET.

(Источник: JScript Блог , Джим Хагунин подумывает Динамический блог , Источник: Блог Jitu )

Существуют две сборки управляемого JScript: одна для настольной среды CLR и одна для CoreCLR ( Microsoft Silverlight ).

Версия Дата Представлено с На основе Платформа
1.0.0.0 2007 г. ASP.NET Futures (предварительная версия от июля 2007 г.) ECMA-262 3-е издание Настольная среда CLR 2.0
1.1.20625.0 2007 г. Microsoft Silverlight 1.1 Alpha (обновление сентябрь 2007 г.) ECMA-262 3-е издание CoreCLR 1.1

Управляемый JScript не поддерживается в .NET Compact Framework .

(Источник: файлы версий Microsoft.JScript.Runtime.dll в папках ASP.NET Futures и Silverlight 1.1)

JScript "Чакра" (JsRT)

JScript «Chakra» основан на версии JScript (COM classic), но он был переработан для повышения производительности в Internet Explorer 9 за счет надлежащей совместимости с движком Active Scripting. Для правильного использования требуется специальный API-интерфейс Microsoft JavaScript Hosting (JsRT). Поэтому он устанавливается бок о бок с JScript 5.x и используется только Internet Explorer 9 и новее, а также хостами JsRT, в то время как другие хосты Active Scripting продолжают использовать версию 5.x при запросе движка JScript.

Версия Дата Представлено с На основе Аналогичная версия JavaScript
Чакра 9.0 Март 2011 г. Internet Explorer 9.0 ECMA-262 5-е издание 1.8.1
Чакра 10.0 Сентябрь 2012 г. Internet Explorer 10.0 ECMA-262 версия 5.1
Чакра 11.0 Октябрь 2013 г. Internet Explorer 11.0 ECMA-262 6-е издание
Край чакры Июл 2015 Edge / Windows 10 ECMA-262 от 5.1 до 9 (2018) редакции

(поддерживается в актуальном состоянии без управления версиями движка)

Существует две версии движка Chakra: исходная, используемая Internet Explorer 9 и более поздними версиями , иногда называемая «jscript9.dll» или «устаревший движок Chakra», и вторая, используемая браузером Microsoft Edge и иногда называемая как «новый движок Chakra», «Edge Engine» или «Chakra.dll». Обе версии Chakra могут использоваться другими приложениями, использующими JsRT API, и могут быть установлены параллельно.

См. Отдельную страницу о новом движке Chakra (Edge) .

JScript .NET (CLI)

JScript .NET - это реализация JScript в Microsoft .NET . Это язык интерфейса командной строки, поэтому он наследует очень мощные функции, но в нем отсутствуют многие функции исходного языка JScript, что делает его непригодным для многих сценариев написания сценариев. JScript .NET можно использовать для страниц ASP.NET и для полных приложений .NET, но отсутствие поддержки этого языка в Microsoft Visual Studio делает его скорее средством обновления классического ASP с использованием классического JScript, чем новым первоклассным. язык.

Версия Платформа Дата Представлено с На основе
7.0 Рабочий стол CLR 1.0 2002-01-05 Microsoft .NET Framework 1.0 ECMA-262 3-е издание
7.1 Настольная среда CLR 1.1 2003-04-01 Microsoft .NET Framework 1.1 ECMA-262 3-е издание
8.0 Настольная среда CLR 2.0 2005-11-07 Microsoft .NET Framework 2.0 ECMA-262 3-е издание
10.0 Настольная среда CLR 4.0 2010-08-03 Microsoft .NET Framework 4.0 ECMA-262 3-е издание

JScript .NET не поддерживается в .NET Compact Framework .

Примечание. Версии JScript .NET не связаны с классическими версиями JScript. JScript .NET - это отдельный продукт. Несмотря на то, что JScript .NET не поддерживается в среде Visual Studio IDE, его версии синхронизированы с версиями других языков .NET ( C # , VB.NET , VC ++ ), которые следуют за соответствующими версиями Visual Studio.

.NET Framework 3.0 и 3.5 созданы на основе 2.0 и не включают новую версию JScript.NET (версия 10.0 для .NET Framework 4.0).

(Источник: версия файла компилятора jsc.exe JScript.NET и Microsoft.JScript.dll, установленного с .NET Framework)

Смотрите также

Примечания

использованная литература

внешние ссылки