Next

Browser Storage

  • Introduction to browser storage methods like localStorage, sessionStorage, and cookies in JavaScript.
  • Introduction to Browser Storage

    Modern web applications need to store data on the user’s browser to improve performance, user experience, and functionality.

    Examples:

    • Remembering login status

    • Saving user preferences (theme, language)

    • Storing cart items in e-commerce

    • Caching data to reduce server calls

    Browser Storage allows web applications to store data locally on the user’s device.

    What Is Browser Storage ?

    Browser Storage refers to different mechanisms provided by browsers to store data on the client side (inside the browser).

    This data:

    • Persists across page reloads

    • Can be temporary or permanent

    • Reduces dependency on the server

    Why Browser Storage Is Needed

    Without browser storage:

    • Data is lost on page refresh

    • User must log in again

    • Preferences are forgotten

    • Repeated server requests slow the app

    With browser storage:

    • Faster performance

    • Better user experience

    • Offline support

    • Reduced server load

    Types of Browser Storage

    Browsers provide multiple storage options, each designed for specific use cases.

    Main Types of Browser Storage:

    1. Cookies

    2. Local Storage

    3. Session Storage

    4. IndexedDB

    5. Cache Storage (Service Workers)

    Cookies (Basic Overview)

    What Are Cookies ? 

    Cookies are small pieces of data stored by the browser and sent to the server with every request.

    Characteristics:

    • Very small size (about 4 KB)

    • Automatically sent to server

    • Can expire

    • Less secure if not handled properly

    Common Uses:

    • Authentication

    • Session tracking

    • User identification

    Local Storage

    What Is Local Storage ?

    Local Storage stores data permanently in the browser until it is manually removed.

    Characteristics:

    • Data persists even after browser close

    • Storage limit ~5–10 MB

    • Data stored as key-value pairs

    • Accessible via JavaScript only

    Example:

    localStorage.setItem("username", "Amit");

    console.log(localStorage.getItem("username"));

    Session Storage

    What Is Session Storage ?

    Session Storage stores data temporarily for a single browser tab or session.

    Characteristics:

    • Data is cleared when tab is closed

    • Same size limit as localStorage

    • Tab-specific

    Example:

    sessionStorage.setItem("token", "abc123");

    console.log(sessionStorage.getItem("token"));


    Difference: Local Storage vs Session Storage

    Feature

    Local Storage

    Session Storage

    Lifetime

    Permanent

    Until tab closes

    Scope

    Entire browser

    Single tab

    Storage size

    Larger

    Larger

    Server access

    No

    No

    IndexedDB (High-Level Overview)

    What Is IndexedDB ?

    IndexedDB is a low-level database inside the browser used to store large structured data.

    Characteristics:

    • Stores objects, files, blobs

    • Very large storage capacity

    • Asynchronous

    • Used in complex applications

    Use Cases:

    • Offline-first applications

    • Progressive Web Apps (PWAs)

    • Large datasets

    Cache Storage (Service Workers)

    What Is Cache Storage ?

    Cache Storage is used mainly with Service Workers to store network responses.

    Characteristics:

    • Enables offline functionality

    • Stores API responses, HTML, CSS, JS files

    • Improves performance

    Use Case:

    • Progressive Web Apps

    • Offline websites

    Client-Side vs Server-Side Storage

    Client-Side Storage

    Server-Side Storage

    Stored in browser

    Stored on server

    Faster access

    Slower (network dependent)

    Limited security

    More secure

    User-controlled

    Server-controlled

    Security Considerations (Important)

    Browser storage is not fully secure.

    Avoid storing:

    • Passwords

    • Credit card details

    • Sensitive personal data

    Best practices:

    • Use tokens instead of passwords

    • Use HTTPS

    • Clear storage on logout

    When to Use Which Storage ?

    Scenario

    Recommended Storage

    Login session

    Cookies / Session Storage

    User preferences

    Local Storage

    Cart items

    Local Storage

    Large offline data

    IndexedDB

    Offline pages

    Cache Storage

    Common Mistakes

    • Storing sensitive data in localStorage

    • Forgetting storage limits

    • Assuming storage is shared across tabs

    • Not clearing data on logout

    • Overusing cookies

    Real-World Example

    E-commerce website:

    • User adds product to cart

    • Cart data stored in localStorage

    • User refreshes page

    • Cart remains intact

    Without browser storage, cart would be empty.

    Best Practices for Browser Storage

    • Choose correct storage type

    • Store minimal data

    • Clear storage when not needed

    • Handle errors gracefully

    • Never trust client-side data blindly

Next