TL;DR

Web Storage API の一種。ブラウザにキーと値の組でデータを保存し、ブラウザを閉じてもデータを保持し続ける。

仕組み

データはオリジンごとに保存され、同じオリジンのページで共有される。オリジンはスキーム、ホスト、ポート番号の組で決まるので、たとえば http://example.com と https://example.com では別の領域になる。保存したデータに期限はない。キーと値は常に UTF-16 の文字列として保存される。

例

// 保存(既存のキーがあれば更新)
localStorage.setItem("myCat", "Tom")
 
// 読み込み
const cat = localStorage.getItem("myCat")
 
// 削除
localStorage.removeItem("myCat")
 
// 全削除
localStorage.clear()

注意点

プライベートブラウジングで読み込んだページの Local Storage は、最後のプライベートタブを閉じたときに消える。また、ユーザがデータの永続化を拒否している場合は SecurityError が発生する。

関連

出典