Bonjour, héros du code ! 🦸♀️🦸♂️
Aujourd’hui, nous allons découvrir l’une des fonctionnalités les plus cool de JavaScript, mais souvent négligée : les Template Literals.
Fini le + pour concaténer des chaînes ! 😎 Avec les template literals, votre code devient propre, lisible, et même amusant. Plongeons dans ce voyage magique ! 🚀
1️⃣ Que sont les Template Literals et pourquoi sont-ils géniaux ? 🦄
Autrefois, nous faisions quelque chose comme ceci :
const name = "Lara";
const profession = "Archéologue";
console.log("Bonjour, je m'appelle " + name + " et je suis " + profession + ".");
Vous voyez ? Utiliser + pour concaténer des chaînes est long et déroutant. 😵
Avec les template literals :
console.log(`Bonjour, je m'appelle ${name} et je suis ${profession}.`);
🎉 Plus lisible, plus court et plus agréable à lire !
Astuce :
- Les template literals utilisent les backticks (`), pas les guillemets.
${}vous permet d’insérer n’importe quelle variable ou expression directement dans la chaîne.- Les chaînes sur plusieurs lignes ne posent plus de problème :
console.log(`Bonjour ${name} !
Vous êtes un ${profession} et un héros dans le monde JS !`);
💡 Bonus : Votre code peut maintenant se lire comme des paroles de chanson 🎶
2️⃣ Utiliser des variables et des calculs dans les chaînes 💡
Les template literals permettent non seulement d’insérer des variables mais aussi de faire des calculs directement dans la chaîne :
const birthYear = 1990;
const currentYear = 2025;
console.log(`J'ai ${currentYear - birthYear} ans et j'adore coder !`);
Sortie :
J'ai 35 ans et j'adore coder !
Pourquoi est-ce génial ?
- Les calculs se font instantanément, pas besoin de variables supplémentaires.
- Le code est plus court, plus propre et plus lisible.
💡 Astuce :
Vous pouvez aussi appeler des fonctions directement dans ${} pour des expressions plus complexes :
function calculatePower(level) {
return level * 10;
}
console.log(`Puissance du personnage : ${calculatePower(7)} ⭐`);
3️⃣ Exemple amusant : Afficher les stats d’un personnage RPG avec des étoiles ⭐
Amusons-nous un peu ! Imaginez un personnage RPG avec les stats Énergie, Puissance et Défense. Affichons-les avec des étoiles :
const character = {
name: "Lara Croft",
energy: 90,
power: 80,
defense: 70
};
for (let stat in character) {
if(stat !== "name") { // Pas besoin d’étoiles pour le nom 😄
const stars = "*".repeat(Math.round(character[stat] / 10));
console.log(`${stat.toUpperCase()}: ${stars} (${character[stat]})`);
}
}
Sortie :
ENERGY: ********* (90)
POWER: ******** (80)
DEFENSE: ******* (70)
Explication amusante du code :
for…inparcourt toutes les propriétés de l’objet.if(stat !== "name")→ on ignore la propriété name pour les étoiles."*".repeat(Math.round(character[stat] / 10))→ visualise les stats avec des étoiles.${stat.toUpperCase()}→ rend les noms des stats en majuscules, plus cool. 😎
💡 Astuce :
.repeat()fonctionne uniquement avec les chaînes ; arrondir le nombre garantit un nombre exact d’étoiles.- Idéal pour les mini-jeux ou les tableaux de bord afin d’offrir un retour visuel immédiat.
4️⃣ Afficher des messages conditionnels pour le statut du personnage 🎭
Les template literals permettent également de créer des messages de statut dynamiques :
const energy = 90;
const power = 40;
console.log(`Statut : ${energy > 50 ? "Énergique ⚡" : "Fatigué 😴"} et Puissance : ${power > 50 ? "Fort 💪" : "Faible 🐢"}`);
Sortie :
Statut : Énergique ⚡ et Puissance : Faible 🐢
Note amusante :
- Les opérateurs ternaires permettent de contrôler dynamiquement le message de statut.
- Votre code devient à la fois informatif, narratif et humoristique. 😆
💡 Astuce : Ajoutez des emojis avec les template literals pour fournir un feedback visuel aux utilisateurs.
5️⃣ Exemple plus créatif : Mini tableau RPG 🌈
Affichons les stats de plusieurs personnages sous forme d’étoiles dans un tableau coloré (dans le terminal, vous pouvez utiliser une librairie pour les couleurs) :
const team = [
{name: "Lara", energy: 90, power: 80, defense: 70},
{name: "Mario", energy: 60, power: 50, defense: 80},
{name: "Zelda", energy: 100, power: 90, defense: 60}
];
team.forEach(c => {
console.log(`\nPersonnage : ${c.name}`);
for (let stat in c) {
if(stat !== "name") {
const stars = "*".repeat(Math.round(c[stat] / 10));
console.log(`${stat.toUpperCase()}: ${stars} (${c[stat]})`);
}
}
});
Sortie dans le terminal :
Personnage : Lara
ENERGY: ********* (90)
POWER: ******** (80)
DEFENSE: ******* (70)
Personnage : Mario
ENERGY: ****** (60)
POWER: ***** (50)
DEFENSE: ******** (80)
Personnage : Zelda
ENERGY: ********** (100)
POWER: ********* (90)
DEFENSE: ****** (60)
💡 Astuce :
- Utilisez
forEachpour parcourir facilement chaque personnage dans le tableau. - Vous pouvez colorer cette sortie dans le terminal ou sur le web avec du CSS ou des bibliothèques comme
chalk.
6️⃣ Résumé & Astuces pour les héros du code 🏁
- Avec les template literals et
${}, vous pouvez utiliser directement des variables et des expressions dans vos chaînes. - Vous pouvez afficher calculs, conditions et messages dynamiques en une seule ligne.
.repeat()permet de visualiser des valeurs numériques.- Les personnages RPG, les tableaux de scores et les messages de statut rendent JS amusant et interactif.
💡 Petite leçon de vie :
“Les template literals ne font pas que exécuter votre code ; ils ajoutent âme, humour et amusement !” ✨

