http://www.jb51.net/article/14566.htm javascript
cookie機制將信息存儲於用戶硬盤,所以能夠做爲全局變量java
用途:(1)保存用戶登陸狀態。例如將用戶id存儲於一個cookie內,這樣當用戶下次訪問該頁面時就不須要從新登陸了,如今不少論壇和社區都提供這樣的功能。 cookie還能夠設置過時時間,當超過期間期限後,cookie就會自動消失。所以,系統每每能夠提示用戶保持登陸狀態的時間:常見選項有一個月、三個 月、一年等。
(2)跟蹤用戶行爲。例如一個天氣預報網站,可以根據用戶選擇的地區顯示當地的天氣狀況。若是每次都須要選擇所在地是煩瑣的,當利用了 cookie後就會顯得很人性化了,系統可以記住上一次訪問的地區,當下次再打開該頁面時,它就會自動顯示上次用戶所在地區的天氣狀況。由於一切都是在後 臺完成,因此這樣的頁面就像爲某個用戶所定製的同樣,使用起來很是方便。
(3)定製頁面。若是網站提供了換膚或更換佈局的功能,那麼可使用cookie來記錄用戶的選項,例如:背景色、分辨率等。當用戶下次訪問時,仍然能夠保存上一次訪問的界面風格。
(4)建立購物車。正如在前面的例子中使用cookie來記錄用戶須要購買的商品同樣,在結帳的時候能夠統一提交。例如淘寶網就使用cookie記錄了用戶曾經瀏覽過的商品,方便隨時進行比較。 數組
缺點(1)cookie可能被禁用。當用戶很是注重我的隱私保護時,他極可能禁用瀏覽器的cookie功能;
(2)cookie是與瀏覽器相關的。這意味着即便訪問的是同一個頁面,不一樣瀏覽器之間所保存的cookie也是不能互相訪問的;
(3)cookie可能被刪除。由於每一個cookie都是硬盤上的一個文件,所以頗有可能被用戶刪除;
(4)cookie安全性不夠高。全部的cookie都是以純文本的形式記錄於文件中,所以若是要保存用戶名密碼等信息時,最好事先通過加密處理。 瀏覽器
在cookie 的名或值中不能使用分號(;)、逗號(,)、等號(=)以及空格。在cookie的名中作到這點很容易,但要保存的值是不肯定的。如何來存儲這些值呢?方 法是用escape()函數進行編碼安全
然然後面的做者並無用這種方法,不知道這是用來幹嗎的cookie
<script language="JavaScript" type="text/javascript">
<!--
document.cookie="userId=828";
document.cookie="userName=hulk";
var strCookie=document.cookie;
alert(strCookie);
//-->
</script> //設置和返回cookie函數
//返回單個cookie 但研究了一下這個數組少寫了一種結果,split的效果是將字符串分割爲數組佈局
複製代碼代碼以下:網站
<script language="JavaScript" type="text/javascript">
<!--
//獲取當前時間
var date=new Date();
var expiresDays=10;
//將date設置爲10天之後的時間
date.setTime(date.getTime()+expiresDays*24*3600*1000);
//將userId和userName兩個cookie設置爲10天后過時
document.cookie="userId=828; userName=hulk; expires="+date.toGMTString();
//-->
</script> 編碼
複製代碼代碼以下:
<script language="JavaScript" type="text/javascript"> <!-- //獲取當前時間 var date=new Date(); //將date設置爲過去的時間 date.setTime(date.getTime()-10000); //將userId這個cookie刪除 document.cookie="userId=828; expires="+date.toGMTString(); //--> </script>