Tous les outils
Gratuit

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

10
let 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

9
function 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

11
arr.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

9
Object.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

9
async 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

9
if (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

10
document.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

9
class 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.
Signaler un problème

Ajoutez cet outil gratuit à votre propre site web — copiez-collez le code ci-dessous.