JSブラウザCookieの操作、クエリ、設定および削除
5458 ワード
JavaScriptはクライアントで動作するスクリプトですので、Sessionを設定することは一般的にできません.
クッキーはクライアントで動作しますので、JSでクッキーを設定できます.
仮にある用例フローでAページからBページにジャンプし、AページでJS用変数tempを用いてある変数の値を保存した場合、BページではJSを用いてtempの変数値を参照する必要があり、JSにおけるグローバル変数や静的変数のライフサイクルには限りがあり、ページのジャンプやページのクローズが発生した場合、これらの変数の値は再読み込みされます.保存の効果がありません.この問題を解決する最善の方法は、クッキーを用いて変数の値を保存することであるが、クッキーをどのように設定して読み込むか?
まず、クッキーの構造を少し理解する必要があります.簡単に言えば、クッキーはキーパッドの形で保存されています.つまり、key=valueの形式です.各クッキーの間は一般に「;」で区切られている.
Aページで変数セット(usr=>「jack」、pwd=>「123」)をクッキーに保存すると、対応するJSコードは以下の通りです.
クッキーはクライアントで動作しますので、JSでクッキーを設定できます.
仮にある用例フローでAページからBページにジャンプし、AページでJS用変数tempを用いてある変数の値を保存した場合、BページではJSを用いてtempの変数値を参照する必要があり、JSにおけるグローバル変数や静的変数のライフサイクルには限りがあり、ページのジャンプやページのクローズが発生した場合、これらの変数の値は再読み込みされます.保存の効果がありません.この問題を解決する最善の方法は、クッキーを用いて変数の値を保存することであるが、クッキーをどのように設定して読み込むか?
まず、クッキーの構造を少し理解する必要があります.簡単に言えば、クッキーはキーパッドの形で保存されています.つまり、key=valueの形式です.各クッキーの間は一般に「;」で区切られている.
Aページで変数セット(usr=>「jack」、pwd=>「123」)をクッキーに保存すると、対応するJSコードは以下の通りです.
document.cookie="usr=" + username;
Bページで usrの を する 、 するJSコードは の りです.var username = document.cookie.split(";")[0].split("=")[1];
のコードは な 、 、およびクッキーをクリアします.どのようにブラウザが じている にクッキーを にクリアするかというと、 は です.クッキーを する に れを しなくてもいいです. 1 /**
2 * cookie
3 * @param key cookie
4 */
5 function getCookie(key) {
6 var arr,reg=new RegExp("(^| )"+key+"=([^;]*)(;|$)");
7 if(arr=document.cookie.match(reg)) {
8 return unescape(arr[2]);
9 }
10 else {
11 return null;
12 }
13 }
14
15 /**
16 * Cookie, ,
17 * @param key cookie
18 * @param value cookie
19 * @param expires cookie , 0, ,
20 */
21 function setCookie(key, value, expires=0) {
22 var cookie = key + "=" + escape(value);
23 if (expires) {
24 var date = new Date();
25 date.setTime(date.getTime()+expires*1000);
26 cookie = cookie + ";expires=" + date.toGMTString();
27 }
28 document.cookie = cookie;
29 }
30
31 /**
32 * cookie
33 * @param key cookie
34 **/
35 function delCookie(key) {
36 var date = new Date();
37 date.setTime(date.getTime() - 1000);
38 document.cookie = key + "='';expires=" + date.toGMTString();
39 }
:https://www.cnblogs.com/HardCarroll/p/10109861.html