EPUB/PDF
FR
Le Tutoriel JavaScript Moderne
Comment c'est fait maintenant. Des bases aux sujets avancés avec des
explications simples mais détaillées.
Rechercher dans le tutoriel Rechercher
Dernière mise à jour le 23 février 2023
Acheter EPUB/PDF Partager:
148 ★ github Discord Chat (English)
Table des matières
Le cours principal contient 2 parties qui couvrent JavaScript en tant que langage de
programmation et l'utilisation d'un navigateur. Il existe également des séries supplémentaires
d'articles thématiques.
JavaScript le language
Dans ce guide nous allons apprendre JavaScript, en partant de zéro jusqu’à des concepts avancés comme la
POO.
PARTIE 1 PARTIE 2 PARTIE 3
Nous allons nous
JavaScript le concentrer ici Navigateur
sur le langage lui même, avec le minimum de notes spécifiques
: Document, Articles aux
environnements.
language Évènements, Interfaces supplémentaires
Une introduction
1.1 Une Introduction à JavaScript
1.2 Manuels et spécifications
1.3 Les éditeurs de code
1.4 La console de développement
Fondamentaux JavaScript
2.1 Hello, world!
2.2 Structure du code
2.3 Le mode moderne, "use strict"
2.4 Les variables
2.5 Les types de données
2.6 Interaction: alert, prompt, confirm
Plus …
Qualité du code
3.1 Débogage dans le navigateur
3.2 Style de codage
3.3 Commentaires
3.4 Ninja code
3.5 Testing automatisé avec Mocha
3.6 Polyfills et transpilers
Objets: les bases
4.1 Objets
4.2 Les références d'objet et leur copie
4.3 Ramasse-miettes (garbage collection)
4.4 Méthodes d'objet, "this"
4.5 Le constructeur, l'opérateur "new"
4.6 Chaînage optionnel '?.'
4.7 Type symbole
4.8 Conversion d'objet en primitive
Types de données
5.1 Méthodes des primitives
5.2 Nombres
5.3 Strings
5.4 Arrays
5.5 Méthodes de tableau
5.6 Iterables
Plus …
Travail avancé avec les fonctions
6.1 Récursion et pile
6.2 Les paramètres Rest et la syntaxe spread
6.3 Variable scope, closure
6.4 L'ancien "var"
6.5 L'objet global
6.6 L'objet Function, NFE
Plus …
Configuration des propriétés d'objet
7.1 Attributs et descripteurs de propriétés
7.2 Property getters and setters
Prototypes, héritage
8.1 Héritage prototypal
8.2 [Link]
8.3 Prototypes natifs
8.4 Méthodes de prototypes, objets sans __proto__
Classes
9.1 Syntaxe de base de la Classe
9.2 Héritage de classe
9.3 Propriétés et méthodes statiques
9.4 Propriétés et méthodes privées et protégées
9.5 Extension des classes intégrées
9.6 Vérification de classe: "instanceof"
9.7 Les mixins
La gestion des erreurs
10.1 Gestion des erreurs, "try...catch"
10.2 Les erreurs personnalisées, Étendre Error
Promesses, async/await
11.1 Introduction: callbacks
11.2 Promesse (promise)
11.3 Chaînage des promesses
11.4 Gestion des erreurs avec des promesses
11.5 Promesse API
11.6 Promisification
11.7 Les micro-tâches
11.8 Async/await
Générateurs, itération avancée
12.1 Générateurs
12.2 Itérateurs et générateurs asynchrones
Modules
13.1 Modules, introduction
13.2 Exporter et importer
13.3 Importations dynamiques
Divers
14.1 Proxy et Reflect
14.2 Eval : exécution d'un texte code
14.3 Curryfication
14.4 Type référence
14.5 BigInt
14.6 Unicode, String internals
Navigateur : Document, Évènements, Interfaces
Apprendre à gérer les pages du navigateur: ajouter des éléments, manipuler leur taille et leur position, créer
dynamiquement des interfaces et interagir avec le visiteur.
Document
1.1 L'environnement du navigateur, spécifications
1.2 L'arbre DOM
1.3 Parcourir le DOM
1.4 Recherches: getElement*, querySelector*
1.5 Propriétés de nœud : type, balise et contenu
1.6 Attributs et propriétés
Plus …
Introduction to Events
2.1 Introduction to browser events
2.2 Bubbling and capturing
2.3 Délégation d'événement
2.4 Actions par défaut du navigateur
2.5 Distribution d'événements personnalisés
UI Events
3.1 Evenements de la souris
3.2 Déplacer la souris : mouseover/out, mouseenter/leave
3.3 Les évènements Glisser-Déposer de la souris
3.4 Les événements de pointeur
3.5 Le Clavier: les évènements keydown et keyup
3.6 Le Défilement
Forms, controls
4.1 Form properties and methods
4.2 Focus: focus/blur
4.3 Les événements: change, input, cut, copy, paste
4.4 Formulaires: l'événement et la méthode "submit"
Chargement du document et des ressources
5.1 Page: DOMContentLoaded, load, beforeunload, unload
5.2 Les scripts: async, defer
5.3 Chargement des ressources: onload et onerror
Miscellaneous
6.1 Mutation observer
6.2 Selection et Range
6.3 La boucle d'événement: les microtâches et les macrotâches
Articles supplémentaires
Liste des sujets supplémentaires qui supposent que vous avez couvert les deux premières parties du tutoriel. Il
n'y a pas de hiérarchie claire ici, vous pouvez lire les articles dans l'ordre que vous voulez.
Frames and windows
1.1 Les méthodes de pop-ups et fenêtres
1.2 Communication entre les fenêtres
1.3 L'attaque par clickjacking
Les données binaires et les fichiers
2.1 ArrayBuffer, tableaux binaires
2.2 TextDecoder and TextEncoder
2.3 Blob
2.4 File and FileReader
Network requests
3.1 Fetch
3.2 FormData
3.3 Fetch: Download progress
3.4 Fetch: Abort
3.5 Fetch: Requêtes Cross-Origin
3.6 API Fetch
Plus …
Stockage des données dans le navigateur
4.1 Cookies, [Link]
4.2 LocalStorage, sessionStorage
4.3 IndexedDB
Animation
5.1 Courbe de Bézier
5.2 CSS-animations
5.3 Animations JavaScript
Web components
6.1 Prenons un peu de recul
6.2 Custom elements
6.3 DOM fantôme
6.4 L'élément Template
6.5 Shadow DOM slots, composition
6.6 Shadow DOM styling
6.7 DOM fantôme et événements
Regular expressions
7.1 Modèles et marqueurs
7.2 Classes de caractères
7.3 Unicode: indicateur "u" et classe \p{...}
7.4 Ancres : début ^ et fin $ d'une chaîne de caractères
7.5 Multiline mode of anchors ^ $, flag "m"
7.6 Limite de mot : \b
Plus …
Partager Carte du tutoriel
Commentaires
● Si vous avez des améliorations à suggérer, merci de soumettre une issue GitHub ou une pull request
au lieu de commenter.
● Si vous ne comprenez pas quelque chose dans l'article, merci de préciser.
● Pour insérer quelques bouts de code, utilisez la balise <code> , pour plusieurs lignes – enveloppez-
les avec la balise <pre> , pour plus de 10 lignes - utilisez une sandbox (plnkr, jsbin, codepen…)
© 2007—2023 Ilya Kantorà propos du projet
nous contacter