SessionStorage Basics in JavaScript
Store and retrieve data in sessionStorage
BeginnerLocalStorage/SessionStorageExample 2 of 10
sessionstorage-basics.js
1// Method 1: Set item2sessionStorage.setItem('sessionId', 'abc123');3sessionStorage.setItem('pageViews', '5');4sessionStorage.setItem('lastPage', '/home');56// Method 2: Get item7const sessionId = sessionStorage.getItem('sessionId');8console.log('Session ID:', sessionId);910// Method 3: Remove item11sessionStorage.removeItem('pageViews');1213// Method 4: Clear all14// sessionStorage.clear();1516// Method 5: Store object17const sessionData = {18 userId: 123,19 username: 'John',20 loginTime: new Date().toISOString()21};2223sessionStorage.setItem('sessionData', JSON.stringify(sessionData));2425const storedData = JSON.parse(sessionStorage.getItem('sessionData'));26console.log('Session Data:', storedData);2728// Method 6: Update page views29let pageViews = parseInt(sessionStorage.getItem('pageViews') || '0');30pageViews++;31sessionStorage.setItem('pageViews', pageViews.toString());32console.log('Page views:', pageViews);3334// Method 7: Track navigation35function trackPage(page) {36 const history = JSON.parse(sessionStorage.getItem('pageHistory') || '[]');37 history.push({38 page: page,39 timestamp: new Date().toISOString()40 });41 sessionStorage.setItem('pageHistory', JSON.stringify(history));42}4344trackPage('/home');45trackPage('/about');46trackPage('/contact');4748const history = JSON.parse(sessionStorage.getItem('pageHistory'));49console.log('Page history:', history);5051// Method 8: Temporary form data52function saveFormData(formData) {53 sessionStorage.setItem('formData', JSON.stringify(formData));54}5556function getFormData() {57 const data = sessionStorage.getItem('formData');58 return data ? JSON.parse(data) : null;59}6061// Save form data62saveFormData({63 name: 'John',64 email: 'john@example.com',65 message: 'Hello'66});6768// Retrieve form data69const formData = getFormData();70console.log('Form data:', formData);7172// Method 9: Session timeout73function setSessionTimeout(minutes) {74 const expiry = new Date().getTime() + (minutes * 60 * 1000);75 sessionStorage.setItem('sessionExpiry', expiry.toString());76}7778function isSessionValid() {79 const expiry = sessionStorage.getItem('sessionExpiry');80 if (!expiry) return false;8182 return new Date().getTime() < parseInt(expiry);83}8485setSessionTimeout(30); // 30 minutes86console.log('Session valid:', isSessionValid());8788// Method 10: Clear on tab close89window.addEventListener('beforeunload', function() {90 // sessionStorage is automatically cleared when tab closes91 // But you can add cleanup code here92 console.log('Tab closing, sessionStorage will be cleared');93});
Output
Session ID: abc123
Session Data: { userId: 123, username: 'John', loginTime: '2024-01-01T12:00:00.000Z' }
Page views: 6
Page history: [
{ page: '/home', timestamp: '2024-01-01T12:00:00.000Z' },
{ page: '/about', timestamp: '2024-01-01T12:00:01.000Z' },
{ page: '/contact', timestamp: '2024-01-01T12:00:02.000Z' }
]
Form data: { name: 'John', email: 'john@example.com', message: 'Hello' }
Session valid: trueWhat's going on
sessionStorage stores data for one session.
Key Differences from localStorage
Cleared when tab closes
Tab-specific (not shared)
Same API as localStorage
Temporary storage
Use Cases
Session data
Form data (temporary)
Page navigation tracking
Temporary user state
Methods
Same as localStorage
setItem/getItem/removeItem
clear/key/length
When to Use
Temporary data
Tab-specific data
Session tracking
Form recovery
Best Practices
Use for temporary data
Clear when done
Handle tab close
Check expiry if needed