📜 Aide-mémoire JavaScript

🌤️ Bases & syntaxe

  • déclarations: let const var
  • function nom(param) { ... } ou const f = () => {}
  • Types : string number boolean nullundefined object array
  • Commentaires : // et /* ... */

⚙️ Contrôle de flux

if (condition) {
  // code
} else if (autreCondition) {
  // code
} else {
  // code
}

for (let i = 0; i < 5; i++) {
  console.log(i);
}

while (condition) {
  // code
}

🧹 Fonctions

function addition(a, b) {
  return a + b;
}

const mult = (a, b) => a * b;
  • Arguments par défaut : function f(x=5) {}
  • Fonctions anonymes, callbacks

📆 Objets & tableaux

const obj = { nom: 'Alice', age: 25 };
const arr = [1, 2, 3];

console.log(obj.nom);
console.log(arr[0]);
  • Destructuration : const {nom} = obj;
  • Méthodes tableaux : map filterreduce

🔄 Asynchronicité

async function fetchData() {
  const response = await fetch('url');
  const data = await response.json();
  return data;
}
  • Promises et async/await
  • .then() et .catch()

🧠 Manipulation DOM

const el = document.getElementById('monId');
el.textContent = 'Hello';

const btn = document.querySelector('button');
btn.addEventListener('click', () => alert('clic !'));

⚠️ Gestion d'erreurs

try {
  // code potentiellement risqué
} catch (e) {
  console.error(e);
} finally {
  // toujours exécuté
}

🎯 ES6+ fonctionnalités

  • Template literals : `Bonjour ${nom}`
  • Spread/rest : ...array
  • Modules : import/export
  • Classes : class MaClasse {}

🛠️ Outils utiles

  • MDN Web Docs : documentation officielle
  • ESLint : linter JS
  • Prettier : formatteur de code

📋 Bonnes pratiques

  • Utiliser const par défaut, let si modifiable
  • Ne pas polluer l’espace global
  • Éviter les callbacks imbriqués (favoriser Promises)
  • Commenter clairement
  • Modulaire : export/import ES6
  • Création dynamique du DOM
  • Facile à intégrer dans une SPA ou un site statique