Introduction au profilage (Node/DevTools) — petites habitudes de mesure du temps
Profilez par petites étapes : mesurez avec console.time/timeEnd et de simples minuteurs, trouvez le code chaud, ne changez qu’un élément, puis mesurez à nouveau
Introduction au profilage (Node/DevTools) — petites habitudes de mesure du temps est une leçon JavaScript Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 3. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage JavaScript Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours JavaScript Academy comprend 3 leçons au total.
Pourquoi profiler ?
Objectif : mesurer → modifier → mesurer à nouveau.
- Utilisez console.time/timeEnd pour mesurer rapidement les durées
- Utilisez une petite fonction auxiliaire now() pour les mesures manuelles
- Concentrez-vous uniquement sur le code chaud
- Ne modifiez qu'une seule chose à la fois

Démonstration de console.time
console.time affiche la durée d'exécution du bloc portant l'étiquette. C'est une excellente première étape.
// Measure a small loop with console.time/timeEnd
console.time("sum");
let s = 0;
for (let i = 0; i < 100000; i = i + 1) {
s = s + i;
}
console.timeEnd("sum");
console.log("sum value:", s);

Fonction auxiliaire de mesure manuelle
La mesure manuelle vous aide à entourer n'importe quelle fonction et à comparer les exécutions avec la même entrée.
// A tiny now() helper that works in many runtimes
const now = (typeof performance !== "undefined" && performance.now)
? function () { return performance.now(); }
: function () { return Date.now(); };
// Time a function manually
function timeFn(label, fn) {
const t1 = now();
const out = fn();
const t2 = now();
console.log(label + " ms:", (t2 - t1));
return out;
}
timeFn("small work", function () {
let x = 0;
for (let i = 0; i < 50000; i = i + 1) { x = x + i; }
return x;
});

Trouver le code chaud
Suivez les appels et la time pour savoir où votre application effectue son travail ; optimisez d'abord la fonction la plus sollicitée.
// Count calls and total time to find hot spots
const metrics = { calls: 0, totalMs: 0 };
function hotWork(n) {
const t1 = now();
let sum = 0;
for (let i = 0; i < n; i = i + 1) {
sum = sum + (i % 3);
}
const t2 = now();
metrics.calls = metrics.calls + 1;
metrics.totalMs = metrics.totalMs + (t2 - t1);
return sum;
}
// Simulate usage
for (let k = 0; k < 5; k = k + 1) {
hotWork(80000);
}
console.log("calls:", metrics.calls, "avg ms:", metrics.totalMs / metrics.calls);

Mesure avant et après
Mesurez avant et après une modification. Conservez la même entrée et comparez uniquement les nombres.
// Compare two approaches with the same input
const hay = [];
for (let i = 0; i < 2000; i = i + 1) { hay.push(String(i)); }
const needles = [];
for (let i = 0; i < 1000; i = i + 1) { needles.push(String(i * 2)); }
function slowIncludes() {
let count = 0;
for (const n of needles) {
if (hay.includes(n)) { count = count + 1; }
}
return count;
}
function fastSet() {
const set = new Set(hay);
let count = 0;
for (const n of needles) {
if (set.has(n)) { count = count + 1; }
}
return count;
}
const c1 = timeFn("includes run", slowIncludes);
const c2 = timeFn("set.has run", fastSet);
console.log("counts:", c1, c2);

Bonnes pratiques de mesure
Conseils :
- Utilisez les mêmes entrées pour toutes les exécutions.
- Effectuez un échauffement une fois, puis mesurez.
- Réduisez les journaux pendant la mesure.
- Ne modifiez qu'une seule chose, puis mesurez à nouveau.
- DevTools/Node proposent des enregistreurs ; commencez avec un simple console.time.

Question sur les bases de console.time
Vérification rapide : outil de mesure rapide.

Récapitulatif
Récapitulatif : commencez avec console.time et une petite fonction auxiliaire now(). Trouvez le code chaud, effectuez une modification simple, puis mesurez à nouveau avec les mêmes entrées.

Questions Fréquemment Posées
La leçon « Introduction au profilage (Node/DevTools) — petites habitudes de mesure du temps » est-elle gratuite ?
Oui — le texte complet de « Introduction au profilage (Node/DevTools) — petites habitudes de mesure du temps » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours JavaScript Academy, passe à CoddyKit PRO. Le cours JavaScript Academy comprend 3 leçons au total.
Qu'est-ce que j'apprendrai dans « Introduction au profilage (Node/DevTools) — petites habitudes de mesure du temps » ?
Profilez par petites étapes : mesurez avec console.time/timeEnd et de simples minuteurs, trouvez le code chaud, ne changez qu’un élément, puis mesurez à nouveau Tu pratiques JavaScript Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer JavaScript Academy ?
Aucune expérience préalable n'est requise. JavaScript Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 3.
Combien de temps prend la leçon « Introduction au profilage (Node/DevTools) — petites habitudes de mesure du temps » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon JavaScript Academy ?
Oui. Chaque leçon JavaScript Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Notions de base de Big-O, chemins chauds ou froids (réussites pour débutants)
- Éviter les fuites — fermetures, minuteurs et références
- Introduction au profilage (Node/DevTools) — petites habitudes de mesure du temps