如何設定沒有過期日期的 JavaScript Cookie?
在本教程中,我們將學習如何設定一個沒有過期日期的 JavaScript cookie。Web 伺服器會向瀏覽器傳送 cookie,cookie 是包含唯一識別符號的小型檔案。每次瀏覽器請求新頁面時,伺服器都會收到這些 cookie。它允許網站跟蹤您的偏好和線上行為。
JavaScript cookie 中的過期選項是可選的。“expires” 屬性是可選的。如果您使用有效日期或時間提供此屬性,則 cookie 將在給定日期或時間過期,此後,cookie 的值將不可訪問。
語法
現在讓我們來看一下設定沒有過期日期的 JavaScript cookie 的語法:
var allcookies = document.cookie;
document.write ("All Cookies : " + allcookies );
在語法中,使用 'document.cookie' 方法,我們可以獲取文件的所有 cookie 並將它們儲存在一個變數中。正如我們上面看到的,expire 屬性是一個選項,如果使用者沒有為其定義過期時間或日期,那麼它將始終被呼叫。
演算法
我們已經看到了上面設定沒有過期日期的 JavaScript cookie 的語法,現在我們將逐步瞭解完整的步驟:
首先,我們將在程式碼的主體中建立一個表單,以在主體中定義一些輸入欄位。
在表單中,使用按鈕標籤,我們將建立一個按鈕,並在其中定義onclick事件。
onclick事件會在按下按鈕時觸發其中定義的函式。
在指令碼中,我們將定義一個函式,該函式首先使用 'document.write' 方法獲取頁面所有 cookie 並將其儲存在一個變數中,然後列印它們。
使用split()方法,我們可以將所有 cookie 儲存在陣列的不同索引中。
我們將遍歷陣列,對於每個索引,我們可以獲取當前 cookie 的名稱和值,並分別列印它們。
我們已經看到了設定沒有過期日期的 JavaScript cookie 的語法和演算法,現在讓我們舉一個例子來實現上面討論的步驟。
示例
在這個例子中,我們將獲取文件的所有 cookie 並首先將它們全部打印出來,然後分別列印它們。
<html> <head> <script> function ReadCookie() { var allcookies = document.cookie; document.write ("All Cookies : " + allcookies ); // Get all the cookies pairs in an array cookiearray = allcookies.split(';'); // Now take key-value pair out of this array for(var i=0; i<cookiearray.length; i++) { name = cookiearray[i].split('=')[0]; value = cookiearray[i].split('=')[1]; document.write ("Key is : " + name + " and Value is : " + value); } } </script> </head> <body> <h3>How to set a javascript cookie with no expiration date</h3> <form name="myform" action=""> <p> click the following button and see the result −</p> <input type="button" value="Get Cookie" onclick="ReadCookie()"/> </form> </body> </html>
在上面的程式碼中,首先,我們使用<form>標籤在程式碼的主體中建立了一個表單,在其中我們建立了一個按鈕,該按鈕將呼叫在程式碼指令碼中定義的函式。
在指令碼中,我們定義了 'ReadCookie' 函式,在該函式中,我們定義了一個變數allcookies,它將包含文件的所有 cookie,並且可以使用document.cookie()方法獲取。
此外,我們使用split函式將所有 cookie 分隔儲存在一個數組中,然後分別列印每個 cookie。為了分別列印它們,我們遍歷了陣列,並在每次迭代中列印了值和名稱。
注意 - Cookie 有保質期。當瀏覽器關閉時,沒有定義過期日期的 cookie 也會被刪除。因為它們在瀏覽器會話結束後會被刪除,所以有時它們被稱為會話 cookie(當瀏覽器關閉時)。瀏覽器會刪除過去過期日期的 cookie。設定過期日期並將其儲存在 cookie 中將延長其壽命,使其超過當前瀏覽器會話。您可以透過在“expires”屬性中輸入日期和時間來實現此目的。
結論
在本教程中,我們學習瞭如何設定沒有過期日期的 JavaScript cookie。Web 伺服器會向瀏覽器傳送 cookie,cookie 是包含唯一識別符號的小型檔案。每次瀏覽器請求新頁面時,伺服器都會收到這些 cookie。JavaScript cookie 中的過期選項是可選的。“expires” 屬性是可選的。如果您使用有效日期或時間提供此屬性,則 cookie 將在給定日期或時間過期,此後,cookie 的值將不可訪問。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP