Общие сведения об IntelliSense для JScript

IntelliSense для Microsoft JScript упрощает доступ к элементам программирования скриптов клиента в редакторе кода в Visual Studio или Microsoft Visual Web Developer, экспресс-выпуск. IntelliSense предоставляет соответствующие контексту варианты кода при наборе кода скрипта клиента, такие как свойства, функции и объекты. При этом нет необходимости покидать редактор кода для поиска документации по синтаксису или параметрам. Вместо этого можно остаться в редакторе кода, найти необходимые сведения и вставить элементы языка прямо в код. IntelliSense для JScript работает в большей части как IntelliSense для языков с управляемым кодом.

В этом разделе содержатся следующие подразделы.

  • Фон

  • Обзор функций IntelliSense для JScript

  • Основные сведения об ошибках IntelliSense для JScript

  • Дополнительные ресурсы

Дополнительные сведения о функциональных возможностях IntelliSense в Visual Studio см. в разделе Использование технологии IntelliSense.

Фон

IntelliSense помогает быстрее писать код, допуская при этом меньше ошибок, что достигается благодаря предоставлению сведений в процессе программирования. В ходе работы со скриптом клиента IntelliSense выводит списки доступных объектов, функций, свойств и параметров в зависимости от текущего контекста. Вариант кода можно выбрать из всплывающего списка, формируемого IntelliSense для завершения кода.

С помощью IntelliSense выполнение следующих задач становится проще:

  • Поиск сведений о членах.

  • Вставка элементов языка прямо в код.

  • Сохранение контекста, не покидая текстовый редактор.

  • Поддержка пользовательского IntelliSense с комментариями к коду XML.

Обзор работы IntelliSense для JScript

IntelliSense для JScript предоставляет варианты кода на основе всего скрипта, которые имеют отношение к текущему контексту программирования. Сюда входят элементы скрипта в текущем файле. IntelliSense также включает любой код, на который имеется прямая или косвенная ссылка из скрипта, например ссылки на файл скрипта, ссылки на скрипт сборки, ссылки на службы и ссылки, связанные со страницами.

Определение контекста IntelliSense

Текущий контекст программирования создается на основе следующих элементов:

  • Функции, которые определены в текущем блоке скрипта. Встроенные блоки скрипта поддерживаются в файлах с расширениями .aspx., .ascx, .master, .html и .htm.

  • Каждый элемент script с атрибутом src, указывающим на файл скрипта. Разрешение конечного файла скрипта должно быть .js.

  • Файлы JScript, ссылающиеся на другие файлы JScript при помощи директивы references.

  • Ссылки на веб-службы XML.

  • Элементы управления ScriptManager и ScriptManagerProxy, если веб-приложение является приложением AJAX на основе ASP.NET.

  • Библиотека Microsoft Ajax, если используется веб-приложение ASP.NET с поддержкой AJAX.

    Примечание

    IntelliSense не поддерживается для скрипта, расположенного в атрибутах обработчика событий для элементов HTML, или определенного в атрибутах href.

Обработка сведений IntelliSense

Для обеспечения работы IntelliSense для JScript Visual Studio выполняет следующие операции:

  • Создается список независимых файлов JScript на основе ссылок в активном документе и исходя из рекурсивной проверки ссылок на скрипты в файлах со ссылками.

  • Выполняется обход списка и сбор сведений о типах и других соответствующих данных из каждого файла.

  • Осуществляется объединение данных и их передача в модуль JScript, обеспечивающий доступность сведений о типах и данных для IntelliSense.

  • Файлы проверяются на предмет изменений, которые могут затронуть список IntelliSense и список обновляется в случае необходимости.

К началу

Обзор функций IntelliSense

IntelliSense для JScript поддерживает следующие объекты:

  • Элементы Document Object Model (DOM)

  • Встроенные объекты

  • Пользовательские переменные, функции и объекты

  • Ссылки на внешние файлы

  • Комментарии к коду XML

  • Объекты ASP.NET AJAX.

Элементы HTML DOM

IntelliSense для JScript предоставляет справочники по программированию для элементов Dynamic HTML (DHTML) DOM, таких как body, form и div. IntelliSense выводит только элементы, включенные в текущий документ и главную страницу. IntelliSense для JScript также поддерживает объекты window и document с их членами.

Встроенные объекты

IntelliSense для JScript предоставляет справочники по программированию для стандартных встроенных объектов Array, String, Math, Date и Number. Дополнительные сведения о встроенных объектах содержатся в разделе Встроенные объекты.

Пользовательские переменные, функции и объекты

При изменении файла JScript Visual Studio сканирует открытые и связанные документы для определения всех доступных ресурсов кода. В их число входят созданные пользователем переменные, функции и объекты. Потом эти ресурсы становятся доступны IntelliSense для JScript.

Дополнительные сведения о пользовательских переменных, функциях и объектах см. в статье Создание собственных объектов на веб-узле MSDN (на английском языке).

Ссылки на внешние файлы

Чтобы не писать весь скрипт клиента на странице можно создать ссылки на внешние файлы с кодом скрипта. Это упрощает повторное использование кода на нескольких страницах и позволяет помещать скрипт клиента в кэш обозревателя.

При работе со страницей ASP.NET с поддержкой AJAX можно создать ссылки на файлы со скриптом при помощи объекта ScriptReference элемента управления ScriptManager.

В следующем примере показана разметка для объекта ScriptReference в элементе управления ScriptManager для создания ссылки на файл скрипта.

<asp:ScriptManager ID="ScriptManager1" runat="server">
  <Scripts>
    <asp:ScriptReference Path="~/Scripts/JScript.js" />
  </Scripts>
</asp:ScriptManager>

Если страница ASP.NET с поддержкой AJAX не используется, можно создать ссылку на внешний файл скрипта при помощи атрибута src в открывающем теге элемента script. Атрибут src указывает URL-адрес внешнего файла с исходным кодом или данными.

В следующем примере показана разметка для атрибута src в теге <script> для создания ссылки на файл скрипта.

<script type="text/javascript" src="~/Scripts/JScript.js">
  
</script>

IntelliSense также поддерживает файлы скрипта, внедренные в качестве ресурсов в сборку в веб-приложениях ASP.NET AJAX. Дополнительные сведения о ресурсах внедренных скриптов см. в разделе Пошаговое руководство. Внедрение в сборку файла JavaScript в качестве ресурса.

Директивы References

Директивы references позволяют Visual Studio устанавливать отношение между редактируемым скриптом и другими скриптами. Директива references позволяет включить файл скрипта в контекст программирования текущего файла скрипта. Эта дает возможность для IntelliSense ссылаться извне на определенные функции, типы и поля в процессе программирования.

Директива references создается в форме комментария XML. Объявление директивы должно предшествовать любому скрипту в файле. Директива reference может содержать ссылку на скрипт на диске, ссылку на скрипт в сборке, ссылку на скрипт в службе или ссылку на скрипт на странице.

Ниже приводятся примеры использования директив ссылок на скрипты на диске.

/// <reference path="ScriptFile1.js" />

/// <reference path="Scripts/ScriptFile2.js" />

/// <reference path="../ScriptFile3.js" />

/// <reference path="~/Scripts/ScriptFile4.js" />

В следующем примере продемонстрировано, как создать ссылку на скрипт в сборке.

/// <reference name "Ajax.js" assembly="System.Web.Extensions, ..." />

В следующем примере показано, как создать ссылку на скрипт в службе.

/// <reference path="MyService.asmx" />

/// <reference path="Services/MyService.asmx" />

/// <reference path="../MyService.asmx" />

/// <reference path="~/Services/MyService.asmx" />

Примечание

IntelliSense для JScript не поддерживается для скрипта, расположенного файлах веб-службы (.asmx) в проектах веб-приложения (WAP).

В следующем примере показано, как создать ссылку на скрипт на странице.

/// <reference path="Default.aspx" />

/// <reference path="Admin/Default.aspx" />

/// <reference path="../Default.aspx" />

/// <reference path="~/Admin/Default.aspx" />

К директиве reference применяются следующие правила.

  • Комментарий XML reference должен быть объявлен перед любым скриптом.

  • В синтаксисе комментария XML необходимо использовать три косые черты. Ссылки со стандартным синтаксисом комментариев (две косые черты) пропускаются.

  • Для каждой директивы можно указать только один файл или ресурс.

  • Несколько ссылок на скрипты на странице не допускается.

  • Если ссылка на страницу уже указана, никакой другой тип директивы ссылки не допускается.

  • В именах файлов должны быть указаны относительные пути. Допускается для относительных путей от корня приложения использовать оператор тильды (~).

  • Абсолютные пути пропускаются.

  • Ссылки на файлы вне текущего проекта пропускаются.

  • Директивы ссылок в страницах со ссылками не будут обрабатываться, то есть директивы ссылок не разрешаются рекурсивно для страниц. Включается только скрипт, на который на странице имеется прямая ссылка.

Комментарии к коду XML

Комментарии к коду XML представляют собой текстовые описания, добавляемые к скрипту. Эти текстовые описания отображаются с IntelliSense при создании ссылки на скрипт с комментарием. Комментарии к коду XML доступны только из файлов, библиотек и служб со ссылками.

Комментарии к коду XML можно включить для обеспечения сводных данных и сведений о параметрах и возвращаемом значении функции. В следующем примере показан скрипт с комментариями к коду XML.

function areaFunction(radiusParam)
{
    /// <summary>Determines the area of a cicle based on a radius parameter.</summary>
    /// <param name="radius" type="Number">The radius of the circle.</param>
    /// <returns type="Number">Returns a number that represents the area.</returns>
    var areaVal;
    areaVal = Math.PI * radiusParam * radiusParam;
    return areaVal;
}

IntelliSense может отображать справочники по коду для комментариев XML в следующих случаях ссылок на файлы.

  • Файл .aspx со ссылкой на файл .js.

  • Файл .js со ссылкой на другой файл .js.

  • Файл .js со ссылкой на файл .aspx.

IntelliSense недоступен, если файл .aspx ссылается на другой файл .aspx.

Дополнительные сведения о порядке добавления комментариев к коду XML для работы IntelliSense для JScript см. в разделе Пошаговое руководство. IntelliSense для JScript.

Объекты ASP.NET AJAX

ASP.NET AJAX также поддерживает IntelliSense для JScript. ASP.NET AJAX включает клиентскую платформу, расширяющую стандартные типы, доступные в ECMAScript (JavaScript и JScript). Для предоставления IntelliSense для JScript подробных сведений об объектах ASP.NET AJAX, комментарии к коду XML были добавлены в Библиотека Microsoft Ajax. Эти комментарии к коду XML отображаются при использовании типов и членов из библиотеки ASP.NET AJAX.

Примечание

Закрытые члены IntelliSense для JScript не отображаются.Закрытые члены в ASP.NET AJAX можно определить по знаку подчеркивания (_) в начале.

Основные сведения об ошибках IntelliSense для JScript

Модуль IntelliSense для JScript в Visual Studio обеспечивает автоматическую проверку путем оценки связей ссылок на скрипты и выполнения препроцессора. Проверка связей ссылок на скрипты зависит от текущего контекста программирования. Если определенная ссылка не найдена, Visual Studio выдает сведения об ошибке для ссылки. Отчеты об ошибках препроцессора создаются в случае ошибки выполнения зависимых файлов.

Дополнительные сведения о том, как определяется проверка связей см. в разделе Определение контекста IntelliSense. Дополнительные сведения о том, как определяются ошибки препроцессора см. в разделе Обработка сведений IntelliSense.

Вызов проверки Jscript

В Visual Studio проверку IntelliSense для JScript можно вызвать двумя способами.

  • В режиме бездействия. Проверка вызывается автоматически в режиме бездействия в любом активном документе со скриптом.

  • Вручную. Проверку IntelliSense для JScript можно также вызвать вручную. Для этого в меню Правка укажите Дополнительно, а затем Проверить документ. Эта команда применяется ко всем открытым документам.

Результаты проверки

Если Visual Studio не удается разрешить ссылки на скрипты или если другие типы ошибок в скриптах препятствуют сбору полных результатов модулем IntelliSense в текущем контексте программирования, Visual Studio реагирует следующим образом.

  • Подчеркивание элементов в редакторе. Подчеркивание красной волнистой линией указывает на ошибки. Если навести указатель мыши на ошибку, отобразится подсказка с описанием ошибки.

  • Окно Список ошибок В окне Список ошибок выводится описание ошибки, указывается файл, где произошла ошибка, номер строки и столбца, а так же проект. Если окно Список ошибок не отображается, в меню Вид щелкните Список ошибок.

К началу

Дополнительные ресурсы

Пошаговое руководство. IntelliSense для JScript

Практическое руководство. Создание XML-комментариев к коду, написанному на JScript

К началу

См. также

Задачи

Пошаговое руководство. IntelliSense для JScript

Динамическое присваивание ссылок на скрипты

Ссылки

Список членов

Другие ресурсы

Использование технологии IntelliSense

About the DHTML Object Model

Объекты JScript

SRC Attribute | src Property