目次
ローカル ストレージ
セッション ストレージ
Cookie
设置 Cookie
读取 Cookie
本地存储、会话存储和 Cookie 之间的区别
结论
ホームページ ウェブフロントエンド jsチュートリアル JavaScript におけるローカル ストレージ、セッション ストレージ、Cookie の違い

JavaScript におけるローカル ストレージ、セッション ストレージ、Cookie の違い

Sep 22, 2023 pm 08:21 PM

JavaScript 中本地存储、会话存储和 Cookie 之间的区别

JavaScript は、クライアント側にデータを保存するための 3 つのメカニズム (Cookie、セッション ストレージローカル ストレージ) を提供します。 それぞれのメカニズムには長所と短所があります。

ローカル ストレージは最新のメカニズムです。大量のデータを保存できますが、ブラウザを閉じてもデータは削除されません。ローカル ストレージは、オフライン データなど、ユーザーが後でアクセスする必要があるデータを保存するのに役立ちます。

セッション ストレージCookie に似ていますが、データは現在のセッションに対してのみ保存されます。これは、ユーザーがブラウザを閉じるとデータが削除されることを意味します。セッション ストレージは、ログイン資格情報などの機密データを保存するのに役立ちます。

Cookie は最も古く、最も有名なメカニズムです。使い方は簡単で、ブラウザで十分にサポートされています。ただし、データは 4 KB に制限されており、ユーザー設定などの機密性の低いデータの保存によく使用されます。

このチュートリアルでは、それぞれについて詳しく説明します。

ローカル ストレージ

最近のほとんどの Web アプリケーションでは、ユーザー名、配送先住所、または単なる環境設定など、何らかのユーザー入力が必要です。通常、その入力は処理と保存のためにどこかのサーバーに送信されます。しかし、アプリケーションでデータをユーザーのコンピュータにローカルに保存する必要がある場合はどうなるでしょうか?ここでローカル ストレージが登場します。

ローカル ストレージは、JavaScript がブラウザ内でデータを直接保存し、アクセスできるようにする Web ストレージの一種です。これは、環境設定や設定など、ユーザーがブラウザを閉じても保持しておきたいデータを保存する場合に特に便利です。

ローカル ストレージ内のデータは、キーと値のペアで保存されます。キーはデータの名前のようなもので、値は実際のデータそのもののようなものです。これは JavaScript の変数と考えることができます。データをローカル ストレージに保存するには、まずキーを作成する必要があります。その後、そのキーの下に必要なデータを保存できます。

キーを作成するには、setItem() メソッドを使用します。このメソッドは 2 つのパラメータを受け取ります。1 つ目はキー、2 つ目は保存される値です。

localStorage.setItem('key', 'value');
ログイン後にコピー
ログイン後にコピー

キーを取得したので、必要なデータをそのキーに保存できます。保存するデータは、文字列、数値、オブジェクト、配列など、JavaScript でサポートされている任意のデータ型にすることができます。

データを保存するには、setItem() メソッドを再度使用します。今回は、キーを最初のパラメーターとして渡し、保存するデータを 2 番目のパラメーターとして渡します。

localStorage.setItem('key', 'value');
ログイン後にコピー
ログイン後にコピー

ローカル ストレージからデータを取得するには、getItem() メソッドを使用します。このメソッドはキーをパラメータとして受け取り、そのキーの下に保存されているデータを返します。

localStorage.getItem('key');
ログイン後にコピー

ローカル ストレージから項目を削除する場合は、removeItem() メソッドを使用します。このメソッドはパラメータとしてキーを受け取り、そのキーの下に保存されているデータを削除します。

localStorage.removeItem('key');
ログイン後にコピー

セッション ストレージ

セッション ストレージは、Web アプリケーションがユーザーのブラウザにデータをローカルに保存できるようにする Web ストレージの一種です。 Cookie とは異なり、セッション ストレージに保存されるデータはそれを作成したサイトに固有のものであり、他のサイトとデータが共有されることはありません。

セッション ストレージは、HTML5 で導入された新機能で、データをユーザーのブラウザにローカルに保存できるようにします。 Cookie とは異なり、セッション ストレージに保存されるデータはそれを作成したサイトに固有のものであり、他のサイトとデータが共有されることはありません。

セッション ストレージは、アプリケーションのクライアント側にデータを保存する方法です。に似ています ローカル ストレージですが、いくつかの重要な違いがあります -

  • セッション ストレージ データは、それを作成したサイトでのみ利用できます。

  • < li>

    セッション ストレージ データは他のサイトと共有されません。

  • セッション ストレージ データは永続的ではありません。つまり、ユーザー セッション中にのみ使用できます。

  • セッション ストレージ データは、それを作成したブラウザ タブに固有です。

セッション ストレージは、クライアントとサーバー間で転送する必要があるデータの量を削減することで、Web アプリケーションのパフォーマンスを向上させる優れた方法です。データはサードパーティの Web サイトからアクセスできる Cookie に保存されないため、より安全な方法でデータを保存するためにも使用できます。

Web アプリケーションでセッション ストレージを使用するには、sessionStorage オブジェクトを使用する必要があります。このオブジェクトは、現在のセッション ストレージへのアクセスを提供します。

sessionStorage オブジェクトには 2 つのメソッドがあります

setItem() - このメソッドは、キーと値のペアのセッション ストレージを設定します。

sessionStorage.setItem("name", "tutorialsPoint");
ログイン後にコピー

getItem() - このメソッドは、セッション ストレージからキーの値を取得します。

var name = sessionStorage.getItem("name");
ログイン後にコピー

sessionStorage オブジェクトには他のプロパティもあります -

  • length - このプロパティは、セッション ストレージ内のキーと値のペアの数を返します。

  • key() - このメソッドはインデックスをパラメータとして受け取り、セッション ストレージ内のそのインデックスにあるキーを返します。

    セッション ストレージは、Web アプリケーションのパフォーマンスを向上させ、より安全な方法でデータを保存するための優れた方法です。
  • Cookie 是存储在用户计算机上的一小段数据。 Cookie 用于存储有关用户的信息,例如用户的姓名、密码和偏好设置。

    Cookie 是使用 document.cookie 属性创建的。此属性用于设置、获取和删除 Cookie。

    使用 setItem() 方法设置 Cookie。该方法接受两个参数,cookie的名称和cookie的值。

    cookie的名称用于标识cookie,值是要存储在cookie中的信息。 cookie。

    以下代码设置一个名为“name”和值“tutorialsPoint”的 cookie。

    document.cookie = "name=tutorialsPoint";
    ログイン後にコピー

    使用 getItem() 方法读取 Cookie。此方法接受 cookie 的名称作为参数并返回 cookie 的值。

    如果 cookie 不存在,getItem() 方法将返回 null。< /p>

    以下代码读取“name”cookie 并将值存储在“user”变量中。

    var user = document.cookie.getItem("name");
    
    ログイン後にコピー

    与本地存储和会话存储相比,cookie 的一个优点是它们可以设置为在特定时间过期,这使得它们成为存储不应长期保留的数据(例如会话 ID)的不错选择。

    下表突出显示了本地存储、会话存储和 Cookie 之间的主要区别 -

    本地存储 会话存储 Cookie
    允许存储10MB的数据。 允许存储5MB的数据。 存储容量限制为4KB数据。
    关闭浏览器时不会删除存储的数据。 存储数据仅用于会话并会在浏览器关闭时被删除。 数据可以设置为在某个时间过期。
    本地存储对于存储用户稍后需要访问的数据,例如离线数据。 会话存储是提高 Web 应用程序性能的好方法。 Cookie 是一个不错的选择用于存储不应该长时间保留的数据,例如会话 ID。
    这对于存储即使用户关闭也希望保留的数据特别有用浏览器,例如首选项或设置。 会话存储对于存储敏感数据(例如登录凭据)非常有用。 Cookie 通常用于存储不敏感的数据,例如用户偏好
    本地存储是HTML5中引入的新功能 会话存储是HTML5中引入的新功能HTML5 Cookie 是最古老的 (HTML4) 和最著名的机制。
    数据是不随客户端请求发送到服务器。 数据不随客户端请求发送到服务器 数据随客户端请求发送到服务器
    数据存储在浏览器和系统上。 数据仅存储在浏览器上。 数据仅存储在浏览器上。

    结论

    在本教程中,我们讨论了本地存储、会话存储之间的区别和饼干。我们已经看到了从该存储中存储和检索数据的不同方法。 本地存储是最新的机制。它允许存储更大量(10MB)的数据,但关闭浏览器时数据不会被删除。 会话存储与cookie类似,但仅存储当前会话的数据。这意味着当用户关闭浏览器时数据将被删除。 Cookie 是最古老、最著名的机制。它们使用简单并且受到浏览器的良好支持。但是,它们仅限于 4KB 的数据,并且通常用于存储不敏感的数据,例如用户首选项。

    以上がJavaScript におけるローカル ストレージ、セッション ストレージ、Cookie の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

フロントエンドのサーマルペーパーレシートのために文字化けしたコード印刷に遭遇した場合はどうすればよいですか? フロントエンドのサーマルペーパーレシートのために文字化けしたコード印刷に遭遇した場合はどうすればよいですか? Apr 04, 2025 pm 02:42 PM

フロントエンドのサーマルペーパーチケット印刷のためのよくある質問とソリューションフロントエンド開発におけるチケット印刷は、一般的な要件です。しかし、多くの開発者が実装しています...

誰がより多くのPythonまたはJavaScriptを支払われますか? 誰がより多くのPythonまたはJavaScriptを支払われますか? Apr 04, 2025 am 12:09 AM

スキルや業界のニーズに応じて、PythonおよびJavaScript開発者には絶対的な給与はありません。 1. Pythonは、データサイエンスと機械学習でさらに支払われる場合があります。 2。JavaScriptは、フロントエンドとフルスタックの開発に大きな需要があり、その給与もかなりです。 3。影響要因には、経験、地理的位置、会社の規模、特定のスキルが含まれます。

javascriptの分解:それが何をするのか、なぜそれが重要なのか javascriptの分解:それが何をするのか、なぜそれが重要なのか Apr 09, 2025 am 12:07 AM

JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。

JavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は? JavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は? Apr 04, 2025 pm 05:09 PM

同じIDを持つ配列要素をJavaScriptの1つのオブジェクトにマージする方法は?データを処理するとき、私たちはしばしば同じIDを持つ必要性に遭遇します...

Shiseidoの公式Webサイトのように、視差スクロールと要素のアニメーション効果を実現する方法は?
または:
Shiseidoの公式Webサイトのようにスクロールするページを伴うアニメーション効果をどのように実現できますか? Shiseidoの公式Webサイトのように、視差スクロールと要素のアニメーション効果を実現する方法は? または: Shiseidoの公式Webサイトのようにスクロールするページを伴うアニメーション効果をどのように実現できますか? Apr 04, 2025 pm 05:36 PM

この記事の視差スクロールと要素のアニメーション効果の実現に関する議論では、Shiseidoの公式ウェブサイト(https://www.shisido.co.co.jp/sb/wonderland/)と同様の達成方法について説明します。

JavaScriptは学ぶのが難しいですか? JavaScriptは学ぶのが難しいですか? Apr 03, 2025 am 12:20 AM

JavaScriptを学ぶことは難しくありませんが、挑戦的です。 1)変数、データ型、関数などの基本概念を理解します。2)非同期プログラミングをマスターし、イベントループを通じて実装します。 3)DOM操作を使用し、非同期リクエストを処理することを約束します。 4)一般的な間違いを避け、デバッグテクニックを使用します。 5)パフォーマンスを最適化し、ベストプラクティスに従ってください。

フロントエンド開発でVSCodeと同様に、パネルドラッグアンドドロップ調整機能を実装する方法は? フロントエンド開発でVSCodeと同様に、パネルドラッグアンドドロップ調整機能を実装する方法は? Apr 04, 2025 pm 02:06 PM

フロントエンドのVSCodeと同様に、パネルドラッグアンドドロップ調整機能の実装を調べます。フロントエンド開発では、VSCODEと同様のVSCODEを実装する方法...

Console.log出力の違い結果:なぜ2つの呼び出しが異なるのですか? Console.log出力の違い結果:なぜ2つの呼び出しが異なるのですか? Apr 04, 2025 pm 05:12 PM

Console.log出力の違いの根本原因に関する詳細な議論。この記事では、Console.log関数の出力結果の違いをコードの一部で分析し、その背後にある理由を説明します。 �...

See all articles