原生JS:封装cookie
cookie的使用相对于localStorage和sessionStorage比较麻烦,为了方便cookie的使用,减少代码的冗余,对cookie进行封装
// cookie的增、改
function setCookie(name, content, iDay) { // name不能包含 ; , . = 以及空格
var date = new Date();
date.setDate(date.getDate() + iDay);
date.setHours(date.getHours() - 8);
document.cookie = `${name}=${encodeURIComponent(content)};path=/;expires=${date}`;
}
// cookie的删除
function removeCookie(name){
setCookie(name,'',-1);
}
// cookie的查询
function getCookie(name){
var cookies = document.cookie.split(';');
return cookies.reduce( (total,item) =>{
var [key,value] =item.split('=');
total[key] = decodeRUIComponent(value);
},{})[name] || '';
}