【ろーかるすとれーじ】

ローカルストレージ とは?

💡 ブラウザの中に「小さな引き出し」を作る
📌 このページのポイント
ローカルストレージ ― ブラウザにデータを保存 ブラウザ Webアプリ(JavaScript) localStorage.setItem() 保存 ローカルストレージ キー: "theme" → "dark" キー: "token" → "abc123" 特徴 容量: 約5MB 有効期限: なし 文字列のみ保存可 Cookie との違い サーバーに送信されない 容量が大きい APIがシンプル sessionStorage タブを閉じると消える 同じタブ内のみ有効 一時的なデータ向き
ローカルストレージのイメージ
ひよこ ひよこ

Cookieと何が違うの?

ペンギン先生 ペンギン先生

大きな違いは3つ。①容量:Cookieは約4KB、ローカルストレージは約5MB。②サーバ送信:Cookieはリクエストのたびにサーバに送信されるけど、ローカルストレージは送信されない。③有効期限:Cookieには期限を設定できるけど、ローカルストレージは明示的に削除するまで残るよ

ひよこ ひよこ

何を保存するの?

ペンギン先生 ペンギン先生

ユーザー設定(ダークモードのON/OFF、言語設定)、下書きデータ、キャッシュしたい情報、ログイン状態の記録などが一般的だよ。ただしパスワードや個人情報など機密データの保存はNG。JavaScriptから簡単にアクセスできるから、XSS攻撃で読み取られるリスクがあるんだ

ひよこ ひよこ

セッションストレージとの違いは?

ペンギン先生 ペンギン先生

ローカルストレージは「ブラウザを閉じても残る」。セッションストレージは「タブを閉じると消える」。一時的なデータ(フォームの入力途中データなど)はセッションストレージ、永続的な設定はローカルストレージと使い分けるのが基本だよ

ひよこ ひよこ

開発者ツールで中身を見れる?

ペンギン先生 ペンギン先生

見れるよ。Chromeの開発者ツール→Application→Local Storageで、現在のサイトが保存しているデータが全部見える。これはつまり「ユーザーも見れる」ということ。だから機密情報の保存には絶対に使わないこと。暗号化してもキーがJavaScriptに含まれるから意味がないんだ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ローカルストレージ」って出てきたら「ブラウザにデータを永続的に保存する仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「Local Storage」 = ローカル記憶域
💬 Web Storage APIの一部。Cookieの容量制限(4KB)を超えるデータをブラウザに保存できるようにしたよ
← 用語集にもどる