Apprendre JS : Introduction

À quoi sert JavaScript ? Où écrire son code JS ? On fait le point ensemble !

Icône de calendrier
Intermédiaire
8 chapitres

Généralités sur le langage

Rôle du JavaScript

Le rôle de JavaScript est simple : apporter une touche interactive et/ou dynamique à une page web, qui sans cela serait figée.

Cela se traduit généralement par :

  • La manipulation du DOM (Document Object Model), avec l’ajout, la modification ou encore la suppression d’éléments HTML.
  • La manipulation du style, avec l’ajout, la modification ou encore la suppression de propriétés CSS (via des animations ou pas).
  • La gestion des événements. Il s’agit du déclenchement d’actions en fonction des interactions de l’utilisateur (clic, survol, saisie clavier…).
  • L’écriture d’algorithmes (variables, tableaux, fonctions, raisonnements logiques et conditionnels…).
  • La collecte d’informations de navigations (cookies, durée de session…).
  • Le stockage de données en local (dans la mémoire du navigateur).

Langage orienté prototype

Le JavaScript est un langage orienté prototype, un sous-type de la Programmation Orientée Objet.

Les prototypes sont une mécanique de JavaScript qui permet aux objets JavaScript d’avoir un prototype objet d’où il hérite des méthodes et des attributs.

Un prototype peut lui aussi avoir son prototype objet duquel il héritera des méthodes et des attributs et ainsi de suite. On parle alors de chaîne de prototypage.

C’est via cette chaîne de prototypage que JavaScript tire son potentiel.

Plus grossièrement, quand on manipulera du texte par exemple, JavaScript nous offrira tout un tas de fonctionnalités pour faciliter son traitement, comme :

  • Connaître le nombre de caractères qu’il contient
  • Savoir s’il contient un certain mot
  • Le transformer en minuscule
  • Remplacer un caractère

Il en sera de même pour tout autre élément que nous manipulerons en JavaScript.

Environnement de développement

Le JavaScript est un langage de développement web côté client, son environnement de développement est donc minimaliste puisqu’il ne se résume qu’à :

  1. Un éditeur de code
  2. Un navigateur web (Chrome, Firefox, Safari…)

Où écrire son code JavaScript

Deux types de fichiers sont capables d’interpréter du code JavaScript : les fichiers .html et les fichiers .js.

❌ Dans un fichier .html

Il est possible de placer son code JS dans un fichier HTML avec la balise <script>. Elle se place dans l’en-tête du fichier (entre les balises <head>) ou bien à la fin du <body>.

<!DOCTYPE html>
<html>
	<head>
		<script>...</script>
	</head>
	<body>
		<script>...</script>
	</body>
</html>

✅ Dans un fichier .js

La solution optimale consiste à écrire son code JS dans un fichier distinct, portant l’extension .js, puis, à l’intégrer dans le document .html avec la balise <script>.

<!DOCTYPE html>
<html>
	<head>
		<script src="script.js"></script>
	</head>
	<body>
		<script src="script.js"></script>
	</body>
</html>

Comme pour la balise HTML <a>, href est ici utilisé pour spécifier le chemin vers le fichier de script en question.

Cette approche permet de mieux structurer et maintenir son code.

<head> VS <body>

Nous avons vu précédemment qu’un script ou un lien vers un fichier .js pouvait être écrit dans le <head>, mais aussi dans le <body>. Mais alors, quelle est la différence ? 🤔

Gardez en tête que les navigateurs exécutent le code JS ligne par ligne. Ainsi, plus une balise <script> est chargée à la fin d’un fichier HTML, plus le navigateur va différer son chargement, ce qui lui permettra donc de charger rapidement le HTML (permettant ainsi d’éviter d’avoir une page blanche trop longtemps sous les yeux).

Cela nous amène donc à quelques règles.

Dans le <head> :

  • Si les scripts sont nécessaires au chargement de la page.

Dans le <body> :

  • Si les scripts ne sont pas nécessaires au chargement de la page
  • Si les scripts manipulent la structure HTML de la page (actions sur le DOM).

Commentaires

Dans un langage de programmation, un commentaire sert à ajouter des notes ou explications pour les développeurs, sans affecter le code exécuté.

En JavaScript, il est possible d’écrire des commentaires dans son code source avec les caractères suivants :

  • Un commentaire monoligne commence par les caractères //.
  • Un commentaire multiligne est délimité par les caractères /* (ouverture) et */ (fermeture).
// Je suis un commentaire

/* Je suis un commentaire que l'on peut écrire 
sur plusieurs lignes */

Console de développement

Rôle d’une console

Développer un site web statique en HTML-CSS est une chose. Venir le dynamiser avec JavaScript en est une autre, autrement plus complexe. En ce sens, dans le but de proposer aux développeurs web des outils puissants, les navigateurs ont peu à peu intégré dans leur écosystème des consoles de développement, permettant d’y exécuter du code JavaScript de manière « cachée » (ailleurs que sur la page web).

La console est donc un outil indispensable lorsque l’on souhaite écrire du code JavaScript.

Ouvrir la console du navigateur

La console se situe généralement dans un menu orienté pour les développeurs (sur le même panneau d’outils que l’inspecteur d’éléments HTML).

Il est également possible de l’ouvrir avec un raccourci clavier.

NavigateurRaccourcisVia le menu
FirefoxF12 ou Ctrl+Maj+IMenu Firefox > Outils supplémentaires > Outils de Développement web
ChromeF12 ou Ctrl+Maj+IMenu Chrome > Plus d’outils > Outils de développement
SafariCtrl+Alt+IActiver dans les Options > Avancées la case à cocher “Afficher le menu Développement dans la barre des menus”

Raccourcis utiles

Lors de l’écriture de scripts directement dans la console du navigateur, il est utile de connaître quelques raccourcis :

  • Flèches : naviguer dans l’historique de commandes saisies
  • Maj+Entrée : aller à la ligne (sans exécuter le code)
  • tab ou flèche : auto-complétion
  • Etc.

Journal

Outre le fait de pouvoir y exécuter manuellement des scripts, la console offre aux développeurs web un journal, permettant d’y écrire tout type d’information lors de l’exécution des scripts.

Cette fonctionnalité est accessible à travers l’utilisation de fonctions JavaScript, dont la plus utile est console.log().

Nous reviendrons plus en détails sur ce point dans le chapitre suivant.