export const storage = () => { let set; let get; if(window.localStorage) { set = (name, value) => { return window.localStorage.setItem(name, value); } get = (name) => { return window.localStorage.getItem(name); } } else { set = (name, value, permanent = true) => { let c = name + '=' + value; var d = new Date(); d.setDate(d.getDate() + 1000); d.toGMTString(); if(permanent) { c += (';expires=' + d) } return document.cookie = c; } get = () => { //先查询cookie是否为空,为空就return "" if ( document.cookie.length > 0){ let start = 0; let end = 0; //通过String对象的indexOf()来检查这个cookie是否存在,不存在就为 -1 start = document.cookie.indexOf(c_name + '=') if (start != -1){ start = start + c_name.length + 1; end = document.cookie.indexOf(";", start) if (end == -1) end = document.cookie.length return unescape(document.cookie.substring(start, end)) //通过substring()得到了值。想了解unescape()得先知道escape()是做什么的,都是很重要的基础,想了解的可以搜索下,在文章结尾处也会进行讲解cookie编码细节 } } return '' } } return { get, set } }