storage.local

このロケールの翻訳が存在しないため、英語バージョンのコンテンツを表示しています。 Help us translate this article!

local ストレージ領域を指します。localストレージ内のアイテムはその拡張機能がインストールされたマシン内で利用できます。

ブラウザーは拡張機能がローカルストレージエリアに保存できるデータ量を制限します。

  • Chromeでは、このAPIを使用して、"unlimitedStorage"パーミッションを許可しない場合は5MBまで保存できます。
  • Firefox ではバージョン56以降で"unlimitedStorage"パーミッションを利用できます。保存できるデータ量は現在では制限していませんが、将来的には制限するため、もし大きなデータ量を保存するのであれば"unlimitedStorage"パーミッションを今から使用するとよいでしょう。

拡張機能をアンインストールすると、関連するローカルストレージは削除されます。

またFirefoxでは、"about:config"で"keepUuidOnUninstall"と"keepStorageOnUninstall"の設定をtrueにすることで、アンインストール時にデータが削除されることを防ぐことができます。 この機能は拡張機能開発のテストのために提供されています。拡張機能自身ではこれらの設定を変更できません。

このAPIは Window.localStorageに似ていますが、拡張機能のコード内でWindow.localStorageを使用することは推奨されません。これはユーザがプライバシーのために履歴とデータを削除するなど、FirefoxはlocalStorage APIを用いて拡張機能が保存したデータを削除することがあるためです。

関数

localオブジェクトはstorage.StorageArea 型で定義された関数を実装しています。

storage.StorageArea.get()
ストレージ領域から 1つ以上のアイテムを取得します。
storage.StorageArea.getBytesInUse()
1つ以上のストレージ領域内に格納されたアイテムが占めるストレージ空間をバイト単位で取得します。
storage.StorageArea.set()
1つ以上のアイテムをストレージ領域に格納します。既にアイテムが存在していれば値は上書きされます。 値を格納したときstorage.onChangedイベントが発火します。
storage.StorageArea.remove()
ストレージ領域内の1つ以上のアイテムを削除します。
storage.StorageArea.clear()
ストレージ領域内の全てのアイテムを削除します。

ブラウザ互換状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxOperaAndroid 版 Firefox
localChrome 完全対応 ありEdge 完全対応 14Firefox 完全対応 45
補足
完全対応 45
補足
補足 The storage API is supported in content scripts from version 48.
Opera 完全対応 ありFirefox Android 完全対応 48

凡例

完全対応  
完全対応
実装ノートを参照してください。
実装ノートを参照してください。

Example extensions

Acknowledgements

このAPIはChromiumの chrome.storage APIに基づいています。また、このドキュメントは storage.jsonにおける Chromium のコードに基づいています。

Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。