Share via


IntelliSense JavaScript

IntelliSense vous aide à écrire du code plus vite et avec moins d'erreurs en fournissant des informations pendant l'écriture du code.Lorsque vous utilisez un script client dans l'éditeur de JavaScript, Intellisense répertorie les objets, les fonctions, les propriétés, et les paramètres qui sont disponibles sur votre contexte actuel.Vous pouvez sélectionner une option de programmation dans la liste contextuelle fournie par IntelliSense pour compléter le code.

IntelliSense simplifie la réalisation des tâches suivantes :

  • Recherche d'informations sur les membres.

  • Insertion d'éléments de langage directement dans le code.

  • Conservation du contexte sans quitter l'éditeur de code.

  • Prise en charge Intellisense personnalisé avec des commentaires de documentation XML et l'extensibilité JavaScript Intellisense.

Pour plus d'informations sur les nouvelles fonctionnalités de services de langage JavaScript, consultez Nouveautés de Visual Studio 2012.

Cette rubrique contient les sections suivantes :

  • Détermination du contexte IntelliSense

  • Traitement des informations IntelliSense

  • Fonctionnalités JavaScript Intellisense

  • Extensibilité JavaScript Intellisense

  • Validation JavaScript

Pour plus d'informations sur le fonctionnement d'IntelliSense de Visual Studio, consultez Utilisation de la fonctionnalité IntelliSense.

Détermination du contexte IntelliSense

JavaScript Intellisense fournit des choix de codage sur tout le script qui est approprié à votre contexte actuel de script.Cela inclut des éléments de script dans le fichier courant.Cela comprend également tout code référencé directement ou indirectement depuis votre script, comme les références de fichier de script, les références de script d'assembly, les références de service et les références associées aux pages.

Votre contexte actuel de script est créé selon les éléments suivants :

  • Fonctions qui sont définis dans tous les blocs de script du document actif.Les blocs de script inline sont pris en charge dans les fichiers qui ont les extensions .aspx., .ascx, .master, .html, et .htm.

  • éléments d'script avec les attributs d' src qui indiquent un autre fichier de script.Le fichier de script cible doit avoir l'extension de nom de fichier .js.

  • Fichiers JavaScript qui référencent d'autres fichiers JavaScript à l'aide d'une directive d' reference .

  • Groupes de référence pour les objets globaux, les extensions Intellisense, ou les fichiers de script différé chargés.

  • Références aux services Web XML.

  • Les contrôles ScriptManager et ScriptManagerProxy, si l'application Web est une application ASP.NET AJAX.

  • Microsoft Ajax Library, si vous travaillez dans une application Web ASP.NET compatible AJAX.

    [!REMARQUE]

    IntelliSense n'est pas pris en charge pour le script qui se trouve dans les attributs de gestionnaire d'événements sur les éléments HTML, ou qui est défini dans les attributs href.

Traitement des informations IntelliSense

Pour fournir JavaScript Intellisense, le service de langage exécute les opérations suivantes :

  • Crée une liste de fichiers JavaScript dépendants basés sur les références du document actif, et selon le script de manière récursive examen de référence dans les fichiers référencés.

  • Parcourt la liste et collecte des informations de type et d'autres données pertinentes à partir de chaque fichier.

  • Regroupe les données et les transmet au service de langage JavaScript, qui met les informations de type et les données à la disposition d'Intellisense.

  • Surveille les fichiers pour les modifications qui peuvent affecter la liste IntelliSense et met à jour la liste si nécessaire.Les scripts sur les magasins distantes (telles que celles référencés à l'aide de HTTP) n'obtiennent surveillés pas.

Fonctionnalités JavaScript Intellisense

Prend en charge IntelliSense JavaScript les objets suivants :

  • Éléments DOM (Document Object Model)

  • Objets intrinsèques

  • Variables définies par l'utilisateur, fonctions et objets

  • Objets définis dans les fichiers externes à l'aide de références telles que références de script, directives de référence, et groupes de référence.

  • Objets spécifiés dans Commentaires de documentation XML, telles que les paramètres et les champs.

  • Objets décrits à l'aide de les balises standard de commentaire JavaScript (/).Pour plus d'informations, consultez Extension de JavaScript IntelliSense.

  • Objets pris en charge à l'aide de le mécanisme d' Extensibilité JavaScript Intellisense .Pour plus d'informations, consultez Extension de JavaScript IntelliSense.

  • Objets ASP.NET AJAX

Lorsque Intellisense ne peut pas déterminer le type d'un objet, il fournit des options pour la saisie semi-automatique des instructions utilisation des ID du document actif.Pour plus d'informations, consultez Saisie semi-automatique des instructions pour les identificateurs.

Bb385682.collapse_all(fr-fr,VS.110).gifÉléments DOM HTML

JavaScript Intellisense fournit des références de programmation pour les éléments DOM dynamiques HTML (DHTML), tels qu' body, form, et div.Seuls les éléments inclus dans le document actuel et la page maître sont affichés par IntelliSense.JavaScript Intellisense prend également en charge les objets d' window et d' document et leurs membres.

Bb385682.collapse_all(fr-fr,VS.110).gifObjets intrinsèques

JavaScript Intellisense fournit des références de programmation pour en mode natif les objets intrinsèques Array, String, Math, Date, et Number.Pour plus d'informations sur les objets intrinsèques, consultez Objets intrinsèques (JavaScript).

Bb385682.collapse_all(fr-fr,VS.110).gifVariables définies par l'utilisateur, fonctions et objets

Lorsque vous modifiez un fichier JavaScript, Visual Studio analyse les documents ouverts et référencés pour déterminer toutes les ressources disponibles en code.Cela inclut les variables, fonctions et objets que vous avez créés.Ces ressources sont ensuite disponibles à JavaScript Intellisense.

Pour plus d'informations sur les variables, fonctions et objets définis par l'utilisateur, consultez Création de vos propres objets (en anglais) sur le site Web MSDN.

Bb385682.collapse_all(fr-fr,VS.110).gifRéférences de fichiers externes

Vous pouvez inclure plusieurs types de références de fichiers externes pour accomplir la prise en charge d'IntelliSense dans votre code.Les références de fichiers externes peuvent être des références de script, directives de référence, ou elles peuvent être spécifiées en utilisant des groupes de référence.

Bb385682.collapse_all(fr-fr,VS.110).gifRéférences de script

Au lieu d'écrire tout le script client dans une page, vous pouvez référencer des fichiers externes qui incluent le code de script.Cela vous simplifie la réutilisation du code entre les pages et permet la mise en cache du script client par le navigateur.

Si vous ne travaillez pas avec une page Web compatible ASP.NET AJAX, vous pouvez référencer un fichier de script externe en utilisant l'attribut src dans la balise d'ouverture d'un élément script.L'attribut src spécifie l'URL pour un fichier externe qui contient le code source ou les données.

L'exemple suivant montre un balisage qui utilise l'attribut src dans une balise <script> pour référencer un fichier de script.

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

Si vous travaillez avec une page Web compatible ASP.NET AJAX, vous pouvez référencer des fichiers de script à l'aide de l'objet ScriptReference du contrôle ScriptManager.

L'exemple suivant montre un balisage qui utilise un objet ScriptReference dans un contrôle ScriptManager pour référencer un fichier de script.

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

IntelliSense prend également en charge des fichiers de script qui sont incorporés comme ressources dans un assembly des applications Web ASP.NET AJAX.Pour plus d'informations sur les ressources de script incorporées, consultez Embedding a JavaScript File as a Resource in an Assembly.

Bb385682.collapse_all(fr-fr,VS.110).gifDirectives de référence

Une directive reference permet à Visual Studio d'établir une relation entre le script vous modifiez actuellement et d'autres scripts.La directive reference vous permet d'inclure un fichier de script dans le contexte de script du fichier de script actuel.Cela permet à IntelliSense de référencer des fonctions définies extérieurement, des types et des champs lors de l'écriture de code.

Vous créez une directive reference dans le formulaire d'un commentaire XML.La directive doit être déclarée dans le fichier avant tout script.Une directive reference peut inclure une référence de script sur disque, une référence de script basée sur un assembly, une référence de script basée sur un service ou une référence de script basée sur une page.

L'exemple suivant montre des exemples d'utilisation de directives de référence basées sur disque.Dans le premier exemple, le service de langage recherche le fichier dans le même dossier qui contient le fichier projet (par exemple, .jsproj).

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

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

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

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

L'exemple suivant indique comment créer une référence à un script basé sur un assembly.

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

L'exemple suivant indique comment référencer un script basé sur un service :

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

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

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

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

[!REMARQUE]

JavaScript Intellisense n'est pas pris en charge pour le script qui est contenu dans des fichiers du service Web (.asmx) dans les projets d'application Web (WAP).

L'exemple suivant indique comment référencer un script basé sur une page.

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

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

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

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

Les règles suivantes s'appliquent à une directive reference.

  • Le commentaire XML reference doit être déclaré avant tout script.

  • Vous devez utiliser la syntaxe des commentaires XML avec trois barres obliques.Les références effectuées en utilisant la syntaxe de commentaire standard (deux barres obliques) sont ignorées.

  • Un seul fichier ou ressource peut être spécifié(e) par directive.

  • Les références multiples aux scripts basés sur des pages ne sont pas autorisées.

  • Si une référence de page est spécifiée, aucun autre type de directives de référence n'est autorisé.

  • Les noms de fichiers utilisent des chemins d'accès relatifs.Vous pouvez utiliser l'opérateur tilde (~) pour indiquer des chemins d'accès relatifs au niveau de la racine de l'application.

  • Les chemins d'accès absolus sont ignorés.

  • Les directives de référence dans les pages référencées ne sont pas traitées ; autrement dit, les directives de référence ne sont pas résolues de manière récursive pour les pages.Seul le script qui est référencé directement par la page est inclus.

Bb385682.collapse_all(fr-fr,VS.110).gifGroupes de référence

Vous pouvez utiliser des groupes de référence pour spécifier que les fichiers particuliers Intellisense .js sont dans la portée de tous vos projets JavaScript.Trois groupes de référence sont disponibles : Groupes de travail implicites (windows), implicites (Web), et dédiés de référence.Les références implicites (windows) sont des applications d' Windows Store à l'aide de JavaScript, et les références implicites (Web) sont pour les projets HTML5.Les fichiers inclus dans ces groupes implicites de référence sont dans la portée de chaque fichier .js ouvert dans l'éditeur de code.

Le groupe de travail dédié de référence concerne les ouvriers le Web HTML5.Les fichiers spécifiés à ce groupe sont dans la portée des fichiers .js qui ont une référence explicite à un groupe de travail dédié de référence.Les références implicites ne s'appliquent pas aux fichiers .js qui ont une référence explicite à un groupe de travail dédié de référence.

Vous pouvez utiliser les options de configuration pour l'éditeur de code JavaScript spécifie des références implicites.Pour plus d'informations, consultez Options, Éditeur de texte, JavaScript, IntelliSense.

ConseilConseil

Les références Intellisense sont généralement utilisées pour fournir la prise en charge IntelliSense pour les objets globaux et pour Intellisense extensions.Vous pouvez également utiliser cette fonctionnalité pour les scripts qui doivent être chargés au moment de l'exécution à l'aide de le chargeur de script.

Bb385682.collapse_all(fr-fr,VS.110).gifCommentaires de documentation XML

Les commentaires de documentation XML sont des descriptions de texte que vous ajoutez au script.Ces descriptions de texte sont affichées avec Intellisense lorsque vous référencez le script commenté.Par exemple, vous pouvez fournir des informations sur les paramètres et la valeur de retour d'une fonction.Les commentaires de documentation XML sont fournis uniquement dans les fichiers référencés, les assemblys, et les services.Pour plus d'informations, consultez Commentaires de documentation XML (JavaScript) et Comment : créer des commentaires de documentation XML JavaScript.

IntelliSense peut afficher des références de code pour les commentaires XML dans les scénarios de référence de fichier suivants :

  • Un fichier .js qui référence un autre fichier .js.

  • Un fichier .js qui référence un fichier .aspx.

  • Un fichier .aspx qui référence un fichier .js.

IntelliSense n'est pas disponible lorsqu'un fichier .aspx référence un autre fichier .aspx.

Bb385682.collapse_all(fr-fr,VS.110).gifObjets ASP.NET AJAX

ASP.NET AJAX prend également en charge JavaScript Intellisense.ASP.NET AJAX inclut une infrastructure cliente qui étend les types standard qui sont disponibles dans ECMAScript (JavaScript).Pour permettre à JavaScript Intellisense de fournir des détails sur les objets ASP.NET AJAX, les commentaires de documentation XML ont été ajoutés partout dans Microsoft Ajax Library.Ces commentaires de documentation XML sont affichés lorsque vous utilisez les types et les membres contenus dans la bibliothèque ASP.NET AJAX.

[!REMARQUE]

Les membres privés ne sont pas affichés par JavaScript Intellisense.Les membres privés sont dénotés dans ASP.NET AJAX comme des membres qui commencent par un trait de soulignement (_).

Extensibilité JavaScript Intellisense

Le service de langage JavaScript fournit des objets et des fonctions qui vous permettent de modifier l'expérience d'Intellisense pour les développeurs qui utilisent des tiers bibliothèques.Ces fonctionnalités sont particulièrement utiles lorsque le service de langage de langue par défaut ne peut pas fournir toutes les informations que vous souhaitez fournir aux clients.Pour plus d'informations, consultez Extension de JavaScript IntelliSense.

Validation JavaScript

La validation JavaScript script se produit constamment en arrière-plan.Lorsque Visual Studio détecter des erreurs de syntaxe dans le code JavaScript, les commentaires est fourni comme suit :

  • Éléments soulignés dans l'éditeur.Les soulignements rouges ondulés indiquent des erreurs.Si vous maintenez le pointeur de la souris sur l'erreur, une info-bulle affiche la description de l'erreur.

  • Fenêtre Liste d'erreurs.La fenêtre Liste d'erreurs affiche la description de l'erreur, le fichier où l'erreur s'est produite, le numéro de ligne et de numéro de colonne, et le projet.Pour afficher la fenêtre Liste d'erreurs, cliquez sur Liste d'erreurs dans le menu Affichage.

  • La fenêtre Sortie affiche les références qui n'ont pas été chargées.

Retour au début

Voir aussi

Tâches

Comment : créer des commentaires de documentation XML JavaScript

Concepts

Extension de JavaScript IntelliSense

Saisie semi-automatique des instructions pour les identificateurs

Commentaires de documentation XML (JavaScript)

Autres ressources

Utilisation de la fonctionnalité IntelliSense

Sur le modèle objet DHTML

List Members

Attribut de SRC | propriété src