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 21 books to help you become a better developer:
- HTML Handbook
- Next.js Pages Router Handbook
- Alpine.js Handbook
- HTMX Handbook
- TypeScript Handbook
- React Handbook
- SQL Handbook
- Git Cheat Sheet
- Laravel Handbook
- Express Handbook
- Swift Handbook
- Go Handbook
- PHP Handbook
- Python Handbook
- Linux Commands Handbook
- C Handbook
- JavaScript Handbook
- Svelte Handbook
- CSS Handbook
- Node.js Handbook
- Vue Handbook