Cookie expires 屬性

admin發表於2019-11-14

expires屬性翻譯成漢語具有"失效"或者"過期"的意思。

顧名思義,此屬性用於設定Cookie的過期時間,通俗的將就是在何時刪除Cookie。

如果不規定此屬性,那麼Cookie會在關閉瀏覽器的時候立即過期。

特別說明:是關閉整個瀏覽器視窗,而不是關閉某一個或者幾個選項卡。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
expires=expiresStr

對expires屬性值expiresStr說明如下:

(1).屬性值是一個字串。

(2).是一個確切的時間點,這一點與max-age屬性不同。

關於與max-age屬性的不同可以參閱Cookie max-age與expires 區別一章節。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼
document.cookie = 'softwhy="螞蟻部落";expires='+new Date(2020,8,26).toUTCString()+';path=/'

上述程式碼分析如下:

(1).expires屬性值是一個字串型別,通過new Date()建立的是一個時間日期物件。

(2).時間日期物件結合運算子+可以實現隱式資料型別轉換,轉換為時間日期字串。

(3).toUTCString()是必須的,否則不同瀏覽器對本地時間處理方式可能不同,使用toGMTString()方法也可。

不同瀏覽器對本地時間日期處理方式不同可能導致過期時間不準,具體參閱設定Cookie過期時間無效一章節。

Cookie過期後被即刻刪除,JavaScript只能利用expires屬性刪除Cookie,為了操作方便通常會對其封裝。

刪除Cookie封裝可以參閱JavaScript 刪除cookie一章節,推薦採用當前流行的Cookie操作外掛用於實際專案。

相關文章