Heim >Web-Frontend >js-Tutorial >Detaillierte Erläuterung des Abrufens von Cookies durch JavaScript und des Löschens von Cookies
Existiert in document.cookie
Cookie ist eine Zeichenfolge, die so aussieht:
"name=xxx; age=22;"
Hinweis : Nach dem Semikolon steht ein Leerzeichen. Der folgende Code erfordert besondere Aufmerksamkeit.
<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>
Prinzipielle Analyse:
Angenommen, der aktuelle Wert von document.cookie ist: <code><span style="font-size: 16px;">myName=xxx; age=22; food=apple;</span>
myName=xxx; age=22; apple;
①<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>
<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>
<span style="font-size: 16px;">; myName=xxx; age=22; food=apple;</span>
lass es zu <span style="font-size: 16px;">; myName=xxx; food=apple;</span>
<span style="font-size: 16px;">var parts = value.split('; ' + name + '=');</span>
②<code><span style="font-size: 16px;">name</span>
var parts = value ('; ' + name + '='); Angenommen, der übergebene <span style="font-size: 16px;">age</span>
<code><span style="font-size: 16px;">name</span><span style="font-size: 16px;">; age=</span>
ist <br>age
<span style="font-size: 16px;">['myName=xxx', '22; food=apple;']</span>
, dann wird die Zeichenfolge nach <span style="font-size: 16px;"> age=</span>
<span style="font-size: 16px;"> if(parts.length === 2)</span>
aufgeteilt, nach der Aufteilung ist das resultierende Array: <code><span style="font-size: 16px;">parts.pop()</span>
['myName=xxx', '22; food=apple;']<span style="font-size: 16px;">22; food=apple;</span>
③ if(parts.length === 2)
<span style="font-size: 16px;">split(';')</span>
Gibt an, dass der entsprechende Wert basierend auf dem Schlüsselnamen <code><span style="font-size: 16px;">['22', 'food=apple;']</span>
abgerufen wird parts.pop() gibt das letzte Element im Array zurück, also <span style="font-size: 16px;">shift()</span>
<span style="font-size: 16px;">22; food=apple;</span>
<span style="font-size: 16px;">split(';')</span>
<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>
get array['22', 'food=apple ;']
shift()<span style="font-size: 16px;">function deleteCookie(name) {<br> document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;'<br>}<br></span>gibt das erste Element des Arrays zurück, nämlich 22, und wir können bekommen, was wir wollen. Wert
Denken:
<p class="article fmt article__content">var value = '; '+ document.cookie;</p>
Was passiert, wenn ich Cookies basierend auf Schlüsselnamen löschen möchte?
Prinzipielle Analyse:
Wo sind die Kekse?
wird in document.cookie gespeichert
Wie sieht das Cookie aus? Cookie ist eine Zeichenfolge, die so aussieht: "name=xxx; age=22;" Hinweis : Nach dem Semikolon steht ein Leerzeichen. Denken Sie daran. Der folgende Code erfordert besondere Aufmerksamkeit<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>
Prinzipielle Analyse:
Angenommen, der aktuelle Wert von document.cookie ist: <code><span style="font-size: 16px;">myName=xxx; age=22; food=apple;</span>
myName=xxx; age=22; apple;
①<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>
<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>
<span style="font-size: 16px;">; myName=xxx; age=22; food=apple;</span>
lass es zu <span style="font-size: 16px;">; myName=xxx; food=apple;</span>
<span style="font-size: 16px;">var parts = value.split('; ' + name + '=');</span>
②<code><span style="font-size: 16px;">name</span>
var parts = value ('; ' + name + '='); Angenommen, der übergebene <span style="font-size: 16px;">age</span>
<code><span style="font-size: 16px;">name</span><span style="font-size: 16px;">; age=</span>
ist <br>age
<span style="font-size: 16px;">['myName=xxx', '22; food=apple;']</span>
, dann wird die Zeichenfolge nach <span style="font-size: 16px;"> age=</span>
<span style="font-size: 16px;"> if(parts.length === 2)</span>
aufgeteilt, nach der Aufteilung ist das resultierende Array: <code><span style="font-size: 16px;">parts.pop()</span>
['myName=xxx', '22; food=apple;']<span style="font-size: 16px;">22; food=apple;</span>
③ if(parts.length === 2)
<span style="font-size: 16px;">split(';')</span>
Gibt an, dass der entsprechende Wert basierend auf dem Schlüsselnamen <code><span style="font-size: 16px;">['22', 'food=apple;']</span>
abgerufen wird parts.pop() gibt das letzte Element im Array zurück, also <span style="font-size: 16px;">shift()</span>
<span style="font-size: 16px;">22; food=apple;</span>
<span style="font-size: 16px;">split(';')</span>
<span style="font-size: 16px;">var value = '; '+ document.cookie;</span>
get array['22', 'food=apple ;']
shift()<span style="font-size: 16px;">function deleteCookie(name) {<br> document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;'<br>}<br></span>gibt das erste Element des Arrays zurück, nämlich 22, und wir können bekommen, was wir wollen. Wert
Denken:
<p class="clearfix mt10">var value = '; '+ document.cookie;</p>
Dieser Code ist die gesamte Essenz der Methode.
Was passiert, wenn ich Cookies basierend auf Schlüsselnamen löschen möchte?
Prinzipielle Analyse:Stellen Sie die Cookie-Ablaufzeit auf einen kürzeren Wert als die aktuelle Zeit ein, dann wird das Cookie gelöscht.
Verwandte Empfehlungen: So verwenden Sie Cookies mit jQueryAnalyse von Cookie-Attributen und MethodenGrundlegende Operationen zum Hinzufügen und Löschen von Cookies in JavaScriptDas obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Abrufens von Cookies durch JavaScript und des Löschens von Cookies. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!