Поделиться через


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

Обновлен: Ноябрь 2007

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.

    Bb385682.alert_note(ru-ru,VS.90).gifПримечание.

    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" />

Bb385682.alert_note(ru-ru,VS.90).gifПримечание.

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.

Bb385682.alert_note(ru-ru,VS.90).gifПримечание.

Закрытые члены 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

Сведения об объектной модели DHTML

Объекты JScript