JavaScriptのCookie取得とCookie削除について詳しく解説

小云云
リリース: 2017-12-12 14:29:24
オリジナル
2079 人が閲覧しました

Cookie (Cookie という複数形で使用されることもあります) は、ユーザーの身元を特定し、セッション追跡を実行するために、一部の Web サイトによってユーザーのローカル端末に保存されるデータ (通常は暗号化された) を指します。この記事では、JavaScript を使用した Cookie の取得と削除に関する知識を共有し、皆様のお役に立てれば幸いです。

クッキーはどこにありますか?

document.cookie に存在します

Cookie はどのようなものですか?

Cookie は次のような文字列です:
"name=xxx; age=22;"

注: 次のコードには特別な注意が必要であることに注意してください。

キー名に基づいて Cookie を取得したい場合、どうすればよいですか?

<span style="font-size: 16px;">function getCookie(name) {<br>  var value = '; '+ document.cookie;<br>  var parts = value.split('; ' + name + '=');<br>  if(parts.length === 2) {<br>    return parts.pop().split(';').shift();<br>  }<br>}<br></span>
ログイン後にコピー
ログイン後にコピー

原理分析:
document.cookie の現在の値が:
<code><span style="font-size: 16px;">myName=xxx; age=22; food=apple;</span>
<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>使其变为<span style="font-size: 16px;">; myName=xxx; age=22; food=apple;</span>
<span style="font-size: 16px;">var parts = value.split('; ' + name + '=');</span> 假设传入的<span style="font-size: 16px;">name</span><span style="font-size: 16px;">age</span>, 那么会根据<span style="font-size: 16px;">; age=</span>分割字符串,分割之后得到的数组为:
<span style="font-size: 16px;">['myName=xxx', '22; food=apple;']</span>
<span style="font-size: 16px;"> if(parts.length === 2)</span>说明根据键名得到了对应的值,<span style="font-size: 16px;">parts.pop()</span>返回的是数组中的最后一项,即<span style="font-size: 16px;">22; food=apple;</span>,然后调用<span style="font-size: 16px;">split(';')</span>得到数组<span style="font-size: 16px;">['22', 'food=apple;']</span>,然后调用<span style="font-size: 16px;">shift()</span>会返回数组的第一项,即22, 即可得到我们想要的值

深思: <span style="font-size: 16px;">var value = '; '+ document.cookie;</span>myName=xxx; food=apple;

<span style="font-size: 16px;">var値 = '; + document.cookie;</span>

<p>; age=apple;<span style="font-size: 16px;"></span></p>
Parts = value.split('; ' + name + '=');<p class="article fmt article__content"></p> 渡された

<span style="font-size: 16px;">name</span>

age

/ code> の場合、文字列は

; age=

に従って分割されます。分割後に得られる配列は次のとおりです。 food =apple;']

<br> if(parts.length === 2)

キー名に基づいて対応する値が取得されることを示します

parts .pop() は、配列内の最後の項目

22; food=apple;🎜🎜 を返し、その後 🎜🎜 を呼び出します。 split('; ')🎜🎜配列🎜🎜['22', 'food=apple;']🎜🎜を取得し、🎜🎜shift()を呼び出します。 🎜🎜 配列の最初の項目 (22) が返され、必要な値を取得できます🎜🎜🎜🎜よく考えてください: 🎜🎜var value = '+ document.cookie ;🎜🎜 このコード これはメソッド全体の本質です。 🎜🎜🎜🎜キー名に基づいて Cookie を削除したい場合、どうすればよいですか? 🎜🎜
<span style="font-size: 16px;">function deleteCookie(name) {<br>  document.cookie = name + '=;  expires=Thu, 01 Jan 1970 00:00:01 GMT;'<br>}<br></span>
ログイン後にコピー
ログイン後にコピー
🎜🎜原理分析: 🎜 Cookie の有効期限を現在時刻よりも短く設定すると、Cookie は削除されます。 🎜🎜🎜🎜🎜🎜クッキーはどこですか? 🎜🎜🎜🎜🎜🎜 document.cookie に存在します🎜🎜🎜🎜 Cookie はどのようなものですか? 🎜🎜🎜🎜Cookie は次のような文字列です: 🎜"name=xxx; age=22;"🎜🎜🎜🎜🎜注: 次のコードには特別な注意が必要であることに注意してください。 🎜🎜

キー名に基づいて Cookie を取得したい場合、どうすればよいですか?

<span style="font-size: 16px;">function getCookie(name) {<br>  var value = '; '+ document.cookie;<br>  var parts = value.split('; ' + name + '=');<br>  if(parts.length === 2) {<br>    return parts.pop().split(';').shift();<br>  }<br>}<br></span>
ログイン後にコピー
ログイン後にコピー

原理分析:
document.cookie の現在の値が:
<code><span style="font-size: 16px;">myName=xxx; age=22; food=apple;</span>
<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>使其变为<span style="font-size: 16px;">; myName=xxx; age=22; food=apple;</span>
<span style="font-size: 16px;">var parts = value.split('; ' + name + '=');</span> 假设传入的<span style="font-size: 16px;">name</span><span style="font-size: 16px;">age</span>, 那么会根据<span style="font-size: 16px;">; age=</span>分割字符串,分割之后得到的数组为:
<span style="font-size: 16px;">['myName=xxx', '22; food=apple;']</span>
<span style="font-size: 16px;"> if(parts.length === 2)</span>说明根据键名得到了对应的值,<span style="font-size: 16px;">parts.pop()</span>返回的是数组中的最后一项,即<span style="font-size: 16px;">22; food=apple;</span>,然后调用<span style="font-size: 16px;">split(';')</span>得到数组<span style="font-size: 16px;">['22', 'food=apple;']</span>,然后调用<span style="font-size: 16px;">shift()</span>会返回数组的第一项,即22, 即可得到我们想要的值

深思: <span style="font-size: 16px;">var value = '; '+ document.cookie;</span>myName=xxx; food=apple;

<span style="font-size: 16px;">var値 = '; + document.cookie;</span>

<p>; age=apple;<span style="font-size: 16px;"></span></p>
Parts = value.split('; ' + name + '=');<p class="clearfix mt10"></p> 渡された

name

age

/ code> の場合、文字列は

; age=

に従って分割されます。分割後に得られる配列は次のとおりです。 food =apple;']

🎜 if(parts.length === 2)🎜🎜 キー名に基づいて対応する値が取得されることを示します 🎜🎜parts .pop()🎜🎜 は、配列内の最後の項目 🎜🎜22; food=apple;🎜🎜 を返し、その後 🎜🎜 を呼び出します。 split('; ')🎜🎜配列🎜🎜['22', 'food=apple;']🎜🎜を取得し、🎜🎜shift()を呼び出します。 🎜🎜 配列の最初の項目 (22) が返され、必要な値を取得できます🎜🎜🎜🎜よく考えてください: 🎜🎜var value = '+ document.cookie ;🎜🎜 このコード これはメソッド全体の本質です。 🎜🎜🎜🎜キー名に基づいて Cookie を削除したい場合、どうすればよいですか? 🎜🎜
<span style="font-size: 16px;">function deleteCookie(name) {<br>  document.cookie = name + '=;  expires=Thu, 01 Jan 1970 00:00:01 GMT;'<br>}<br></span>
ログイン後にコピー
ログイン後にコピー
🎜🎜原理分析: 🎜 Cookie の有効期限を現在時刻よりも短く設定すると、Cookie は削除されます。 🎜🎜🎜🎜🎜関連する推奨事項: 🎜🎜🎜 jQuery で Cookie を使用する方法🎜🎜🎜🎜 Cookie の属性とメソッドの分析🎜🎜🎜🎜 JavaScript で Cookie を追加および削除するための基本操作🎜🎜🎜🎜

以上がJavaScriptのCookie取得とCookie削除について詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート