各位大佬周末好,又到我們最喜歡的知識交流環節
今天我們一起來看一下cookie設置的相關知識
首先讓我們看下什么是cookie。cookie是一個保存在客戶機中的簡單的文本文件, 這個文件與特定的 Web 文檔關聯在一起, 保存了該客戶機訪問這個Web 文檔時的信息, 當客戶機再次訪問這個 Web 文檔時這些信息可供該文檔使用。說人話就是一種本地緩存技術
cookie
特點:
1、最大只有4kb
2、數據有限制,一個域名下,最多只能存儲50條數據
3、有時效性,可以設置過期時間
4、有域名的限制,你設置誰能讀取,才能讀取
cookie的組成部分:
name=value;[expires=date];[path=path];[domain=somewhere.com];[secure]
必選項:name和value
可選項:后面中括號里面填寫的參數。
那我們看下cookie是什么樣子的
//設置cookie
document.cookie = 'username=鋼鐵俠';
alert(document.cookie); //username=鋼鐵俠
這里要補充一點
【注】如果大家想要設置中文不亂碼,我們可以通過編碼進行存儲,通過解碼進行讀取。
encodeURIComponent 將中文編碼成字符
decodeURIComponent 將字符解碼轉成中文
document.cookie = "username=" + encodeURIComponent("鋼鐵俠");
alert(document.cookie); //username=%E9%92%A2%E9%93%81%E4%BE%A0
document.cookie = "username=" + encodeURIComponent("鋼鐵俠");
alert(decodeURIComponent(document.cookie));//username=鋼鐵俠
除此之外我們還有可以設置cookie的過期時間
expires 過期時間
【注】設置cookie的過期時間的,賦值必須是日期對象,如果過期,系統會自動清除過期的cookie。
【注】如果不設置這個值,默認是"會話",一次會話(打開瀏覽器-關閉瀏覽器)
【注】主動刪除cookie,設置cookie時間是過去的時間。
document.cookie = 'username=鋼鐵俠;expires=' + afterOfDate(7);
//封裝函數,獲取n天后的時間
function afterOfDate(n){
var d = new Date();
var day = d.getDate();
d.setDate(day + n);
return d;
}
alert(afterOfDate(7));
通過上述代碼可以設置cookie過期日期為7天后。
看了上述案例希望對你了解cookie有所幫助
點關注不迷路 大家一起共進步~
如果你對前端開發的學習有興趣,可以在B站上,找碼農雨飛的免費前端學習視頻,代碼免費送!!! https://www.bilibili.com/video/av77505416
“哪里會有人喜歡孤獨, 不過是不喜歡失望罷了。 ——村上春樹《挪威的森林》