性質瀏覽器
限制安全
構成
舉例:Set-Cookie:name=value;expires=Mon,22-Jan-07 07:10:24 GMT;domain=.baidu.com; path=/; secure服務器
值(value):存儲在Cookie中的字符串值,進行url編碼
ps:url編碼有三種方法cookie
(1)escape/uescape:進行unicode字符編碼與解碼 (2)encodeURI/decodeURI:對特殊字符不進行編碼 (3)encodeURIComponent/decodeURIComponent:對特殊字符也會進行編碼
原生實現cookie的增刪改查dom
const CookieUtil = { get:function(name){ const cookie = document.cookie; const cookieName = encodeURIComponent(name) + '='; const cookieStart = cookie.indexOf(cookieName); let cookieValue = null; if(start > -1){ let cookieEnd = cookie.indexOf(';', cookieStart); if(cookieEnd === -1){ cookieEnd = cookie.length; } cookieValue = cookie.substring(cookieStart+cookieName.length, cookieEnd); } return cookieValue; }, set:function(name, value, expires, domain, path, secure){ let cookieText = encodeURIComponent(name) + '=' + encodeURIComponent(value); if(expires){ cookieText += "; expires=" + expires.toUTCString(); } if(domain){ cookieText += "; domian=" + domain; } if(path){ cookieText += "; path=" + path; } if(secure){ cookieText += '; secure'; } document.cookie = cookieText; console.log(document.cookie); }, delete:function(name, domian, path, secure){ this.set(name, '', new Date(0), domian, path, secure); } }