Exercise 16: Storage Migration Helper

Problem Statement

Function `migrateStorage(oldKey, newKey, transform)` banao jo old key se new key me data migrate kare. Example: migrateStorage("old", "new", (v) => v * 2)

Sample Output:

migrateStorage("old", "new", (v) => v * 2)
// Migrates and transforms data

Solution

const migrateStorage = (oldKey, newKey, transform) => {
  const oldValue = localStorage.getItem(oldKey);
  if (oldValue) {
    const transformed = transform(JSON.parse(oldValue));
    localStorage.setItem(newKey, JSON.stringify(transformed));
    localStorage.removeItem(oldKey);
  }
};

Explanation

Overall Goal:

  • Storage data ko migrate karna.

Real world:

  • Data migration: key changes.
  • Upgrades: data transformation.