« Programmation JavaScript/Ordre d'évaluation » : différence entre les versions
Contenu supprimé Contenu ajouté
m →Instructions : sens |
Aucun résumé des modifications |
||
Ligne 1 :
<noinclude>{{Programmation JavaScript}}</noinclude>
[[Programmation JavaScript/Ligne d'instruction|<< Ligne d'instruction]] / [[Programmation JavaScript/Bloc d'instructions|Bloc d'instructions >>]]
== Scripts ==
Lors du chargement d'une page Web, dès que le navigateur rencontre un script, il l'exécute avant de charger la suite du document HTML. Si le script contient des instructions qui doivent être évaluées immédiatement et qui manipulent le document, ce dernier risque de ne pas être prêt.
Lorsque
Lorsque qu'elles possèdent l'attribut <code>async</code>, le navigateur les télécharge et exécute en parallèle, dans un ordre qui dépend du contexte, donc aléatoire et potentiellement avant la fin du chargement de la page. Il ne faut donc jamais l'utiliser pour charger des bibliothèques ayant des dépendances, comme jQuery.
S'il faut manipuler le document au moment du chargement, il est donc fortement recommandé de déclencher le code ''après'' avoir déclaré toute partie du document qui doit être utilisée. Il reste bien sûr possible de déclarer la plupart du code dans des fonctions avant le corps du document, comme cela est fait couramment, et soit d'appeler les fonctions dans un script ultérieur, soit de placer ces instructions dans la méthode <code>document.onload</code>.
Ligne 26 ⟶ 29 :
[[Programmation JavaScript/Ligne d'instruction|<< Ligne d'instruction]] / [[Programmation JavaScript/Bloc d'instructions|Bloc d'instructions >>]]
|