3 min read
•Question 41 of 50easyWhat is the difference between localStorage and sessionStorage?
Understanding web storage APIs.
What You'll Learn
- Storage differences
- API methods
- Use cases
Comparison
| Feature | localStorage | sessionStorage |
|---|---|---|
| Lifetime | Permanent | Until tab closes |
| Scope | All tabs | Single tab |
| Size | ~5-10MB | ~5-10MB |
API Methods
code.jsJavaScript
// Set item
localStorage.setItem('key', 'value');
sessionStorage.setItem('key', 'value');
// Get item
localStorage.getItem('key'); // 'value'
// Remove item
localStorage.removeItem('key');
// Clear all
localStorage.clear();
// Get key by index
localStorage.key(0);
// Length
localStorage.length;Storing Objects
code.jsJavaScript
// Storage only accepts strings
const user = { name: 'John', age: 30 };
// Store object
localStorage.setItem('user', JSON.stringify(user));
// Retrieve object
const stored = JSON.parse(localStorage.getItem('user'));Use Cases
code.jsJavaScript
// localStorage: User preferences
localStorage.setItem('theme', 'dark');
// sessionStorage: Form draft
sessionStorage.setItem('formDraft', JSON.stringify(formData));
// Check if exists
if (localStorage.getItem('token')) {
// User is logged in
}Storage Event
code.jsJavaScript
// Listen for changes from other tabs
window.addEventListener('storage', (e) => {
console.log(`${e.key} changed from ${e.oldValue} to ${e.newValue}`);
});