Tu pensais que “supprimer un élément d’un tableau en JavaScript” c’était aussi simple que delete monTableau[i] ?
Ahah. Erreur de débutant. 😏
C’est comme tenter de tuer un zombie avec une cuillère à dessert : techniquement possible, mais pas propre.
Alors accroche ta cape de dev, on va plonger dans le monde merveilleux des tableaux, là où splice() règne en despote et filter() fait sa révolution silencieuse.
🍕 Méthode #1 : splice() — le tueur discret
C’est l’assassin à la lame fine de ton tableau. Il entre, supprime, et repart sans laisser de trace (ou presque).
let pizzas = ["Margherita", "Pepperoni", "Hawaïenne"];
pizzas.splice(1, 1);
console.log(pizzas);
// ["Margherita", "Hawaïenne"]
Ici, 1 c’est l’index du pauvre Pepperoni, et le deuxième 1 c’est le nombre d’éléments supprimés.
💡 Et ouais, tu peux aussi ajouter un élément au passage :
pizzas.splice(1, 1, "4 Fromages"); Résultat :
["Margherita", "4 Fromages",
"Hawaïenne"].Un one-liner qui fait le ménage et remplace les restes de la veille. 😎
🧼 Méthode #2 : filter() — le moine zen du JavaScript
Le filter() c’est le Gandalf des méthodes. Il ne détruit rien. Il purifie.
let nombres = [1, 2, 3, 4]; let sansTrois = nombres.filter(n => n !== 3);
console.log(sansTrois); // [1, 2, 4]
Tu vois ? Pas de sang, pas de drame, juste un nouveau tableau plus pur, plus propre, plus rapide.
Parfait pour les devs qui prônent la paix intérieure et les fonctions immuables. 🧘♂️
🔪 Méthode #3 : pop() et shift() — les brutaux du gang
Besoin de virer le premier ou le dernier élément ?
Ces deux-là sont tes gros bras :
let files = ["toto.js", "index.html", "app.css"];
files.pop(); // vire
"app.css" files.shift(); // vire "toto.js"
console.log(files); // ["index.html"]
C’est simple, efficace et un peu bourrin.
Mais attention : ils ne prennent pas de paramètres. Tu veux virer celui du milieu ? Nope. Fais la queue, gamin.
🧨 Méthode #4 : delete — l’option maudite
Tu peux le faire. Mais tu ne devrais pas.
let fruits = ["pomme", "banane", "mangue"];
delete fruits[1];
console.log(fruits); // ["pomme", undefined, "mangue"]
Ouais, tu as bien lu.
Le tableau garde un trou noir dimensionnel (undefined) à la place de ton élément supprimé.
C’est comme balancer ton ex de la photo de groupe, mais garder son ombre.
Moralité : delete dans un tableau ? ❌ Jamais, sauf si tu veux invoquer un bug à 3h du matin.
🧠 Bonus : la méthode old-school du dev des années 2000
Si tu veux vraiment sentir l’odeur du code vintage :
let animaux = ["chat", "chien", "lapin"];
for (let i = 0; i < animaux.length; i++) { if (animaux[i] === "chien") { animaux.splice(i, 1); } }
console.log(animaux); // ["chat", "lapin"]
Pas hyper sexy, mais ça marche.
C’est un peu le Game Boy Color du JavaScript : pas beau, mais indestructible.
🕹️ Conclusion : choisis ton style, jeune codeur
Tu veux être précis ? → splice()
Tu veux être puriste et zen ? → filter()
Tu veux juste dégager le premier ou le dernier ? → shift() / pop()
Tu veux invoquer le chaos ? → delete (mais assume les conséquences)
Bref, supprimer un élément en JavaScript, c’est comme gérer ton backlog de bugs : plusieurs méthodes, un seul objectif — faire le ménage sans tout casser. 🧯
Et maintenant ? File ouvrir ta console et teste tout ça avant que ton tableau ne t’envoie un message d’erreur existentiel.
M-binary