JavaScript cookie詳解及簡單實例應(yīng)用
JavaScript cookie詳解
一、cookie基本介紹
cookie是document的對象。cookie可以使得JavaScript代碼能夠在用戶的硬盤上持久地存儲數(shù)據(jù),并且能夠獲得以這種方式存儲的數(shù)據(jù)。cookie還可以用于客戶端腳本化。
cookie數(shù)據(jù)可以自動地在Web瀏覽器好Web服務(wù)器之間傳遞。
在瀏覽器中可以通過navigator.cookieEnabled屬性檢查瀏覽器的cookie功能是否被激活。
二、cookie的基本屬性
每個cookie都有四個可選的屬性
1.expires
指定了cookie的生存期。將expires屬性設(shè)定為未來的一個過期時間,即可讓cookie在過期后失效。
現(xiàn)在用max-age屬性來代替它,max-age用秒來設(shè)置cookie的生命期。一旦超過了max-age的生命期,那個cookie就會被瀏覽器自動地從cookie文件中刪除掉
2.path
指定了與cookie關(guān)聯(lián)在一起的網(wǎng)頁。默認情況下,cookie會和創(chuàng)建它的網(wǎng)頁以及與這個網(wǎng)頁處于同一個目錄下的網(wǎng)頁和處于該目錄的子目錄下的網(wǎng)頁關(guān)聯(lián)。
這個主要設(shè)置了cookie對于網(wǎng)頁的可見性。加入將path設(shè)置為www.a.com/list,那么www.a.com/list/a.html和www.a.com/list/b.html都可以訪問cookie,但www.a.com/comtain不 能訪問該cookie。但是如果將path設(shè)置為www.a.com/,那么www.a.com/list和www.a.com/contain都可以訪問cookie。
3.domain
默認只有來自同一Web服務(wù)器的頁面才能訪問cookie,可以設(shè)置domain。例如把cookie的path設(shè)定為/,cookie設(shè)定為.example.com,則所有位于catalog.example.com和 orders.example.com的網(wǎng)頁以及位于.example.com域名下其他服務(wù)器的網(wǎng)頁都能訪問這個cookie
注意:不能講一個cookie的域設(shè)置為服務(wù)器所在的域之外的域
4.source
source為一個布爾值,true由不安全的HTTP傳輸(默認);false只在瀏覽器和服務(wù)器通過HTTPS或其他的安全協(xié)議連接下才被傳輸。
三、cookie的應(yīng)用
一個cookie是一個字符串,有name=value這種結(jié)構(gòu)組合而成。cookie的例子:
version=1.0;max-age=3600
注意每段字符串之間不能包含逗號或者空格等,因此在寫入cookie時需要使用encodeURIComponent去掉變量中的相關(guān)符號,讀取時利用的decodeURIComponent
要創(chuàng)建一個能夠持續(xù)存在一年的cookie:
document.cookie = “version=” + document.lastModified + “;max-age=” + (60*60*24*365);
四、總結(jié)
雖然現(xiàn)在瀏覽器的存儲技術(shù)越來越多,HTML5也為localStorage帶來了更高的性能體驗,但是cookie仍然可以為我們處理很多事務(wù),方便小型數(shù)據(jù)的交流。合理的使用cookie,可以讓我們的應(yīng)用程序更加靈活。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
javascript對話框使用方法(警告框 javascript確認框 提示框)
javascript對話框使用方法,有警告框、確認框、提示框的使用方法和語法,大家參考使用吧2014-01-01JavaScript中的prototype和constructor簡明總結(jié)
一直沒弄清楚JavaScript中的prototype和constructor屬性,今天看了看書,總算有點眉目了2014-04-04JavaScript中的document.referrer在各種瀏覽器測試結(jié)果
這篇文章主要介紹了JavaScript中的document.referrer在各種瀏覽器測試結(jié)果,包括在多種情況下每個瀏覽器能否用document.referrer取到值,非常珍貴的測試結(jié)果,需要的朋友可以參考下2014-07-07