0% ont trouvé ce document utile (0 vote)
11 vues13 pages

Guide Visuel JavaScript pour Débutants

Ce guide visuel présente les fondamentaux de JavaScript pour les débutants, incluant des concepts clés tels que les variables, les fonctions, les objets et les tableaux. Il explique également la manipulation du DOM, la gestion des événements et les opérations asynchrones. Avec des illustrations et des exemples pratiques, ce document facilite l'apprentissage de JavaScript.

Transféré par

aymengharbi2024
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
11 vues13 pages

Guide Visuel JavaScript pour Débutants

Ce guide visuel présente les fondamentaux de JavaScript pour les débutants, incluant des concepts clés tels que les variables, les fonctions, les objets et les tableaux. Il explique également la manipulation du DOM, la gestion des événements et les opérations asynchrones. Avec des illustrations et des exemples pratiques, ce document facilite l'apprentissage de JavaScript.

Transféré par

aymengharbi2024
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

code

JavaScript pour
Débutants
Un Guide Visuel

Découvrez les fondamentaux de JavaScript à travers


des explications visuelles et des exemples pratiques
conçus spécialement pour les débutants.

lightbulb auto_awesome touch_app


Concepts Clés Visuel
Interactif
Variables, Illustrations claires
Exemples pratiques
fonctions, objets et pour chaque
et exercices
plus encore concept
Variables et Types de
Données
Les bases du stockage d'informations en JavaScript

storage Qu'est-ce qu'une variable ?


Une variable est un conteneur qui stocke une valeur. Pensez-y comme
une boîte étiquetée où vous pouvez mettre différentes informations.

// Déclaration de variables
let nom = "Marie"; // Variable modifiable
const age = 25; // Constante (non modifiable)
var ville = "Paris"; // Ancienne méthode (à éviter)

category Types de Données Primitifs


JavaScript a plusieurs types de données primitifs pour représenter
différentes sortes d'informations :

text_fields String: "Bonjour" tag Number: 42, 3.14

check_circle Boolean: true, false remove Undefined: non défini

block Null: vide intentionnel emoji_symbols Symbol: identifiant unique

swap_horiz Conversion de Types


JavaScript peut convertir automatiquement les types de données
(coercition) ou vous pouvez les convertir manuellement :

Conversion Automatique Conversion Manuelle

"5" + 3 // → "53" Number("123") // → 123


(string) String(123) // → "123"
"5" - 3 // → 2 (number) Boolean(1) // → true
"5" == 5 // → true
(boolean)
Fonctions
Les blocs de construction réutilisables de JavaScript

functions Qu'est-ce qu'une fonction ?


Une fonction est un bloc de code réutilisable qui effectue une tâche
spécifique. Elle peut prendre des entrées (paramètres), traiter des
données, et retourner un résultat.

// Structure de base d'une fonction


function nomFonction(paramètre1, paramètre2) {
// Code à exécuter
return résultat;
}

code Déclaration de Fonctions


Il existe plusieurs façons de déclarer une fonction en JavaScript :

text_format Déclaration classique arrow_forward Expression de fonction

function saluer(nom) { const saluer =


return "Bonjour " + function(nom) {
nom; return "Bonjour " +
} nom;
};

flash_on Fonction fléchée (ES6) shortcut Fonction fléchée concise

const saluer = (nom) => const saluer = (nom) =>


{ "Bonjour " + nom;
return "Bonjour " +
nom;
};

sync_alt Paramètres et Valeurs de Retour


Les fonctions peuvent recevoir des données (paramètres) et renvoyer
des résultats :

input settings output


Paramètres
arrow_forward arrow_forward
Traitement Valeur de retour
d'entrée

Fonction avec paramètres Fonction sans retour

function function
additionner(a, b) { afficherMessage(msg) {
return a + b; [Link](msg);
} }

additionner(5, 3); afficherMessage("Bonjour!");


// → 8 // → undefined

lightbulb Pourquoi les fonctions sont importantes ?


repeat grid_view
Réutilisabilité Organisation
Écrire une fois, utiliser partout Structurer le code en blocs logiques

build extension
Maintenance Abstraction
Facile à modifier et déboguer Cacher la complexité derrière une
interface simple
Objets et Tableaux
Structures de données complexes en JavaScript

category Qu'est-ce qu'un objet ?


Un objet est une collection de propriétés, où chaque propriété est une
association entre un nom (ou clé) et une valeur.

nom: "Marie"

âge: 25

ville: "Paris"

travail: function() {...}

// Création d'un objet


const personne = {
nom: "Marie",
âge: 25,
ville: "Paris",
saluer: function() {
return "Bonjour, je suis " + [Link];
}
};

build Manipulation des objets


visibility Accéder aux propriétés add Ajouter des propriétés
Deux manières d'accéder aux Créer de nouvelles propriétés pour
propriétés d'un objet un objet

[Link] [Link] =
personne["nom"] "marie@[Link]";

edit Modifier des propriétés delete Supprimer des propriétés


Changer la valeur d'une propriété Retirer une propriété d'un objet
existante
delete [Link];
personne.âge = 26;

view_array Tableaux (Arrays)


Un tableau est une liste ordonnée de valeurs. Chaque valeur est appelée
un élément, et chaque élément a une position numérique appelée index
(commençant par 0).

0 1 2 3

// Création d'un tableau


const fruits = ["pomme", "banane", "orange", "fraise"];

// Accéder aux éléments


fruits[0]; // → "pomme"
fruits[2]; // → "orange"

// Connaître la longueur
[Link]; // → 4

format_list_bulleted Méthodes de tableaux utiles

add_circle push() et unshift() loop forEach()


Ajouter des éléments à la fin ou au Exécuter une fonction pour chaque
début élément

[Link]("kiwi"); [Link](fruit => {


[Link]("mangue"); [Link](fruit);
});

remove_circle pop() et shift()


Retirer des éléments de la fin ou du
filter_list filter() et map()
début Créer de nouveaux tableaux filtrés
ou transformés
[Link]();
[Link](); [Link](f => [Link]
> 5);
[Link](f =>
[Link]());
Flux de Contrôle
Instructions conditionnelles et boucles en JavaScript

call_split Instructions Conditionnelles


Les instructions conditionnelles permettent d'exécuter du code en
fonction de certaines conditions.

alt_route if / else if / else swap_horiz switch


Exécute un bloc de code si une Compare une expression à
condition est vraie, sinon exécute un plusieurs valeurs et exécute le code
autre bloc correspondant

if (âge >= 18) { switch (jour) {


[Link]("Majeur"); case "lundi":
} else if (âge >= 13) { [Link]("Début de
[Link]("Adolescent"); semaine");
} else { break;
[Link]("Enfant"); case "vendredi":
} [Link]("Fin de
semaine");
break;
default:
[Link]("Jour
normal");
}

loop Boucles
Les boucles permettent d'exécuter répétitivement un bloc de code.

repeat for replay while


Exécute un bloc de code un nombre Exécute un bloc de code tant qu'une
déterminé de fois condition est vraie

for (let i = 0; i < 5; i++) let i = 0;


{ while (i < 5) {
[Link]("Tour n°" + [Link]("Tour n°" +
i); i);
} i++;
}

update do...while format_list_numbered for...of


Exécute un bloc de code au moins Parcourt les éléments d'un objet
une fois, puis répète tant que la itérable (tableau, chaîne, etc.)
condition est vraie
const fruits = ["pomme",
let i = 0; "banane", "orange"];
do { for (const fruit of fruits)
[Link]("Tour n°" + {
i); [Link](fruit);
i++; }
} while (i < 5);

rule Valeurs Truthy et Falsy


En JavaScript, toutes les valeurs ont une valeur booléenne inhérente
lorsqu'elles sont évaluées dans un contexte booléen.

check_circle Valeurs Truthy (vraies) cancel Valeurs Falsy (fausses)

true 1 -1 "0" false 0 -0 0n ""

"false" [] {} null undefined NaN

function(){}

// Exemples d'utilisation des valeurs truthy/falsy


if ("bonjour") {
[Link]("Ceci s'affiche car 'bonjour' est truthy");
}

if (0) {
[Link]("Ceci ne s'affiche pas car 0 est falsy");
} else {
[Link]("Ceci s'affiche car 0 est falsy");
}

speed Contrôle de Boucle Avancé


skip_next continue stop break
Passe à l'itération suivante de la Termine immédiatement la boucle
boucle, en sautant le reste du code et continue l'exécution après la
de l'itération actuelle boucle

for (let i = 0; i < 5; i++) for (let i = 0; i < 5; i++)


{ {
if (i === 2) continue; if (i === 2) break;
[Link](i); // Affiche [Link](i); // Affiche
0,1,3,4 0,1
} }
Manipulation du DOM
Interagir avec les éléments HTML en JavaScript

account_tree Qu'est-ce que le DOM ?


Le DOM (Document Object Model) est une interface de programmation
qui représente la structure d'un document HTML sous forme d'arbre
d'objets que JavaScript peut manipuler.

document

html

head body

div p

// Le DOM permet d'accéder et de modifier


// n'importe quel élément de la page web
[Link] = "Nouveau titre"; // Modifie le titre de
la page
[Link] = "#f0f0f0"; // Change
la couleur de fond

search Sélectionner des Éléments


querySelector() querySelectorAll()
tag Sélectionne le premier format_list_bulleted Sélectionne tous les éléments
élément correspondant correspondants

getElementById() getElementsByClassName()
bookmark Sélectionne par ID (unique) local_offer Sélectionne par classe

// Exemples de sélection
const titre = [Link]("h1");
const paragraphes = [Link]("p");
const bouton = [Link]("monBouton");
const elements =
[Link]("maClasse");

edit Modifier des Éléments

text_fields Contenu style Style


Modifier le texte ou le HTML d'un élément Changer l'apparence d'un élém

[Link] = "Nouveau texte"; [Link] = "bl


[Link] = "HTML"; [Link] =

format_list_bulleted Classes settings Attributs


Ajouter, supprimer ou vérifier des classes Modifier les attributs HTML

[Link]("nouvelleClasse"); [Link]("src
[Link]("ancienneClasse"); "[Link]");
[Link]("active"); [Link]("
[Link]("dis

add_circle Créer et Supprimer des Éléments


add Création delete Suppression
Créer de nouveaux éléments Supprimer des éléments existants

const nouveauDiv = const element =


[Link]("div"); [Link]("monEle
[Link] = "Bonjour!"; [Link](); // Supprime
[Link] = "maClasse"; l'élément

arrow_downward Ajout au DOM content_copy Clonage


Ajouter des éléments à la page Dupliquer des éléments existants

const parent = const original =


[Link]("conteneur"); [Link]("origin
[Link](nouveauDiv); const copie =
[Link](nouveauDiv, [Link](true);
premierEnfant); [Link](copie
Événements
Réagir aux interactions utilisateur en JavaScript

notifications Qu'est-ce qu'un événement ?


Un événement est une action ou occurrence détectée par le navigateur,
comme un clic de souris, un appui sur une touche, ou le chargement
d'une page. JavaScript peut "écouter" ces événements et y répondre.

mouse click keyboard keydown visibility load screen_rotation resize touch_app touchstart

change_history change send submit mouse_over mouseover

// Exemple simple d'événement


const bouton = [Link]("button");

[Link]("click", function() {
alert("Bouton cliqué !");
});

settings_remote Gestionnaires d'Événements


add_circle addEventListener() remove_circle removeEventListener()
Méthode moderne pour ajouter un Supprime un gestionnaire d'événements
gestionnaire d'événements précédemment ajouté

[Link]("click", function maFonction() {


maFonction); [Link]("Événement
[Link]("click", déclenché");
function() { }
// Code à exécuter [Link]("click",
}); maFonction);
[Link]("click"
maFonction);

assignment Propriétés d'événement code Attributs HTML


Ancienne méthode mais toujours utilisée Méthode directe dans le HTML (déconseillé

[Link] = function() {
[Link]("Élément cliqué"); <button onclick="maFonction()">
}; Cliquez-moi
</button>
[Link] = null; //
Supprime l'événement

call_merge Propagation des Événements


Lorsqu'un événement se produit sur un élément, il se propage à travers le
DOM selon trois phases :

window

document

html

body

div parent

élément cible

Phase de Capture arrow_downward Phase Cible arrow_upward Phase de Bouillonnement

arrow_downward Capture arrow_upward Bouillonnement (Bubbling)


L'événement descend du haut du L'événement remonte de l'élément
DOM vers l'élément cible cible vers le haut du DOM

[Link]( [Link](
"click", "click",
maFonction, maFonction,
true // useCapture = true false // useCapture =
); false (défaut)
);

// Contrôler la propagation
[Link]("click", function(event) {
[Link](); // Arrête la propagation
[Link](); // Empêche le comportement par
défaut
});

event_available Objet Event


Lorsqu'un événement est déclenché, un objet Event est créé et passé au
gestionnaire d'événements. Il contient des informations utiles sur
l'événement.
touch_app Propriétés utiles mouse Événements de souris
Informations sur l'événement Informations spécifiques aux
événements de souris
[Link] // Élément qui
a déclenché l'événement [Link] // Position X
[Link] // par rapport à la fenêtre
Élément qui écoute [Link] // Position Y
l'événement par rapport à la fenêtre
[Link] // Type [Link] // Bouton de la
d'événement (click, etc.) souris (0=gauche, 1=milieu,
[Link] // Moment où 2=droite)
l'événement s'est produit [Link] // Si la touche
Alt est enfoncée
JavaScript Asynchrone
Gérer les opérations qui prennent du temps

hourglass_empty Qu'est-ce que l'asynchrone ?


JavaScript est un langage single-thread, mais il peut exécuter des
opérations asynchrones qui ne bloquent pas le thread principal. Cela
permet de gérer des tâches comme les requêtes réseau ou les lectures
de fichiers sans bloquer l'interface utilisateur.

1995 2015 2017

Callbacks Promesses Async/Await

Fonctions Objets Syntaxe simplifiée


passées en représentant une pour les
paramètre opération future promesses

// Exemple d'opération asynchrone


[Link]("Début");

setTimeout(function() {
[Link]("Opération asynchrone terminée");
}, 2000); // Exécuté après 2 secondes

[Link]("Fin"); // S'affiche immédiatement

replay Callbacks (Rappels)


Un callback est une fonction passée en argument à une autre fonction,
qui sera exécutée plus tard, généralement après la fin d'une opération
asynchrone.

call_made Callback simple warning Callback Hell


Fonction exécutée après une Imbrication excessive de callbacks
opération asynchrone
getData(function(a) {
function fetchData(callback) getMoreData(a, function(b)
{ {
setTimeout(function() { getMoreData(b,
callback("Données function(c) {
reçues"); getMoreData(c,
}, 1000); function(d) {
} [Link](d);
});
fetchData(function(data) { });
[Link](data); });
}); });

verified Promesses (Promises)


Une promesse est un objet représentant une opération asynchrone qui
n'est pas encore terminée. Elle peut être dans l'un des états suivants :
pending (en attente), fulfilled (résolue) ou rejected (rejetée).

hourglass_top check_circle error


arrow_forward arrow_forward
Pending Fulfilled Rejected

// Création d'une promesse


const maPromesse = new Promise(function(resolve, reject) {
const succes = true;

if (succes) {
resolve("Opération réussie !");
} else {
reject("Erreur lors de l'opération");
}
});

// Utilisation de la promesse
maPromesse
.then(function(resultat) {
[Link](resultat); // "Opération réussie !"
})
.catch(function(erreur) {
[Link](erreur);
});

auto_awesome Async/Await
Async/Await est une syntaxe simplifiée pour travailler avec les
promesses, rendant le code asynchrone plus facile à lire et à écrire,
similaire au code synchrone.

code Syntaxe de base compare_arrows Comparaison


Utilisation des mots-clés async et Promesses vs Async/Await
await

async function fetchData() Promesses Async/Await


{
try {
const response = await
.then().catch() try/catch
fetch('/api/data');
const data = await Chaînage Séquentiel
[Link]();
[Link](data);
} catch (erreur) { Plus verbeux Plus lisible
[Link](erreur);
}
}

// Exemple avec plusieurs opérations asynchrones


async function getUserData() {
try {
// Exécution parallèle
const [user, posts] = await [Link]([
fetch('/api/user/1'),
fetch('/api/posts/1')
]);

const userData = await [Link]();


const postsData = await [Link]();

return { user: userData, posts: postsData };


} catch (erreur) {
[Link]("Erreur:", erreur);
}
}

Vous aimerez peut-être aussi