How to slugify a string in JavaScript
A snippet of code I used to slugify a string
export function slugify(str) {
// Remove leading and trailing whitespace
str = str.trim()
// Make the string lowercase
str = str.toLowerCase()
// Remove accents, swap ñ for n, etc
str = str.normalize('NFD').replace(/[\u0300-\u036f]/g, '')
// Remove invalid characters
str = str.replace(/[^a-z0-9 -]/g, '')
// Replace whitespace with a hyphen
str = str.replace(/\s+/g, '-')
// Collapse consecutive hyphens
str = str.replace(/-+/g, '-')
return str
}
→ Get my JavaScript Beginner's Handbook
→ I wrote 17 books to help you become a better developer:
- C Handbook
- Command Line Handbook
- CSS Handbook
- Express Handbook
- Git Cheat Sheet
- Go Handbook
- HTML Handbook
- JS Handbook
- Laravel Handbook
- Next.js Handbook
- Node.js Handbook
- PHP Handbook
- Python Handbook
- React Handbook
- SQL Handbook
- Svelte Handbook
- Swift Handbook
Also, JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025