💾 Local Storage = Browser Database
Need to store user data in browser? Local storage persists data across sessions. No server needed.
📝 Local Storage Methods
// Set data
localStorage.setItem('key', 'value');
// Get data
const value = localStorage.getItem('key');
// Remove data
localStorage.removeItem('key');
// Clear all data
localStorage.clear();
// Get all keys
const keys = Object.keys(localStorage);
// Check if key exists
if (localStorage.getItem('key') !== null) {
// Key exists
}
// Store objects (JSON)
const user = { name: 'Alice', age: 30 };
localStorage.setItem('user', JSON.stringify(user));
const userData = JSON.parse(localStorage.getItem('user'));
🎯 Practical Examples
// User preferences
function saveTheme(theme) {
localStorage.setItem('theme', theme);
}
function getTheme() {
return localStorage.getItem('theme') || 'light';
}
// Remember form data
function saveFormData(formData) {
localStorage.setItem('formData', JSON.stringify(formData));
}
function getFormData() {
const data = localStorage.getItem('formData');
return data ? JSON.parse(data) : {};
}
// Shopping cart
const cart = [
{ id: 1, name: 'Product 1', price: 99 },
{ id: 2, name: 'Product 2', price: 149 }
];
localStorage.setItem('cart', JSON.stringify(cart));
const savedCart = JSON.parse(localStorage.getItem('cart') || '[]');
// User session
function saveSession(user) {
localStorage.setItem('session', JSON.stringify(user));
}
function getSession() {
const session = localStorage.getItem('session');
return session ? JSON.parse(session) : null;
}
function clearSession() {
localStorage.removeItem('session');
}
💡 Limitations
- 5-10 MB storage limit
- String data only (use JSON for objects)
- Not secure (data is plain text)
- Same-origin policy
- Not for sensitive data
“Local storage saves data in browser. Preferences, form data, carts. Essential for client-side apps.”
