Antisèche JavaScript
Une référence du JavaScript moderne, consultable et imprimable — syntaxe, tableaux, chaînes, objets, async/await, DOM et fonctionnalités ES2022+. Gratuit.
Variables et types
10let x = 1;
Variable réassignable, portée de bloc
const PI = 3.14;
Constante à portée de bloc
typeof value
Renvoie le type sous forme de chaîne
Number('42')
Convertir une chaîne en nombre
String(42)
Convertir une valeur en chaîne
parseInt('42px', 10)
Analyser un entier initial (base 10)
Boolean(0)
Forcer une valeur en true/false
value ?? 'default'
Coalescence des nuls (null/undefined seulement)
a?.b?.c
Chaînage optionnel, court-circuite sur null
Array.isArray(x)
Vérifier si une valeur est un tableau
Fonctions
9function add(a, b) { return a + b; }
Déclaration de fonction nommée
const add = (a, b) => a + b;
Fonction fléchée à retour implicite
const f = (a = 1) => a;
Valeur de paramètre par défaut
function f(...args) {}
Les paramètres rest forment un tableau
f(...arr)
Étaler un tableau en arguments
const { a, b } = obj;
Déstructuration d'objet
const [x, y] = arr;
Déstructuration de tableau
(function(){})()
Fonction immédiatement invoquée (IIFE)
fn.bind(this)
Lier un contexte this fixe
Chaînes
10`Hello ${name}`
Interpolation de littéral de gabarit
str.length
Nombre de caractères
str.includes('a')
Vérifier la présence d'une sous-chaîne
str.slice(0, 3)
Extraire une partie d'une chaîne
str.replace(/a/g, 'b')
Remplacer les correspondances (regex)
str.split(',')
Découper en tableau
str.trim()
Supprimer les espaces autour
str.toUpperCase()
Convertir en majuscules
str.padStart(3, '0')
Compléter le début à une longueur
str.at(-1)
Caractère à l'index (négatifs acceptés)
Tableaux
11arr.map(x => x * 2)
Transformer chaque élément
arr.filter(x => x > 0)
Garder les éléments correspondants
arr.reduce((a, b) => a + b, 0)
Réduire à une seule valeur
arr.find(x => x.id === 1)
Premier élément correspondant
arr.some(x => x > 0)
true si un élément correspond
arr.every(x => x > 0)
true si tous les éléments correspondent
arr.includes(3)
Vérifier une valeur
arr.sort((a, b) => a - b)
Tri numérique croissant
[...new Set(arr)]
Supprimer les doublons
arr.flat(Infinity)
Aplatir totalement les tableaux imbriqués
arr.at(-1)
Dernier élément (index négatif)
Objets
9Object.keys(obj)
Tableau des clés énumérables propres
Object.values(obj)
Tableau des valeurs propres
Object.entries(obj)
Tableau de paires [clé, valeur]
{ ...a, ...b }
Fusionner des objets (spread)
Object.assign({}, a, b)
Copier/fusionner vers une cible
Object.freeze(obj)
Rendre un objet immuable
{ [key]: value }
Nom de propriété calculé
obj.hasOwnProperty('x')
Vérifier une propriété propre
structuredClone(obj)
Cloner un objet en profondeur
Async et promesses
9async function f() {}
Déclarer une fonction async
await fetch(url)
Attendre la résolution d'une promesse
Promise.all([p1, p2])
Attendre la résolution de toutes
Promise.allSettled([p1, p2])
Attendre le règlement de toutes
Promise.race([p1, p2])
Résoudre avec la première réglée
new Promise((res, rej) => {})
Créer une promesse manuellement
try { await f(); } catch (e) {}
Gérer les erreurs async
setTimeout(fn, 1000)
Exécuter après un délai (ms)
queueMicrotask(fn)
Planifier une microtâche
Flux de contrôle
9if (a) {} else if (b) {} else {}
Branches conditionnelles
a ? b : c
Expression ternaire
switch (x) { case 1: break; }
Branchement multiple
for (const x of arr) {}
Itérer les valeurs (itérables)
for (const k in obj) {}
Itérer les clés d'objet
while (cond) {}
Boucler tant qu'une condition tient
arr.forEach((x, i) => {})
Exécuter un callback par élément
break / continue
Quitter ou sauter une itération
label: for (...) { break label; }
Sortir de boucles imbriquées
DOM et événements
10document.querySelector('.x')
Premier élément correspondant
document.querySelectorAll('.x')
Tous les éléments correspondants (NodeList)
el.addEventListener('click', fn)
Attacher un écouteur d'événement
el.classList.toggle('active')
Basculer une classe CSS
el.dataset.id
Lire un attribut data-id
el.textContent = 'hi'
Définir du texte sans risque (sans HTML)
el.setAttribute('aria-hidden', true)
Définir un attribut
e.preventDefault()
Annuler l'action par défaut
el.closest('.parent')
Plus proche ancêtre correspondant
document.createElement('div')
Créer un nouvel élément
Classes et modules
9class A extends B {}
Classe avec héritage
constructor() { super(); }
Initialiser et appeler le parent
#private = 1;
Champ de classe privé
static create() {}
Méthode statique de la classe
get value() {}
Accesseur getter
export default fn;
Export par défaut du module
export { a, b };
Exports nommés du module
import x, { y } from './m.js'
Imports par défaut + nommés
const m = await import('./m.js')
Import dynamique
Aucune entrée ne correspond à « :q ».
Besoin d'aide ?
Un problème avec cet outil ? Signalez-le à notre équipe.