cookie和sessionStorage以及localStorage的区别

cookie和sessionStorage以及localStorage的区别
sessionStorage和localStorage具有封装好的API:
1、setItem(name,value):设置属性值
2、getItem(name):获取属性值
3、removeItem(name):移除属性
4、clear():清除属性

使用cookie需自己封装接口:

const cookieManger = {
    setCookie(name, value, time, path = '/') {
        var encodeName = encodeURIComponent(name);
        var encodeValue = encodeURIComponent(value);
        if (time instanceof Date) {
            document.cookie = `${encodeName}=${encodeValue};expires=${time};path=${path}`;
        } else {
            document.cookie = `${encodeName}=${encodeValue};max-age=${time};path=${path}`;
        }
        return this;
    },
    getCookie(name, callback) {
        let cookiesArr = document.cookie.split('; ');
        let cookieArr = [];
        var encodeName = encodeURIComponent(name);
        for (let i = 0, len = cookiesArr.length; i < len; i++) {
            cookieArr = cookiesArr[i].split('=');
            if (cookieArr[0] == encodeName) {
                callback(decodeURIComponent(cookieArr[1]));
                return this;
            }
        }
        callback('未找到');
        return this;
    },
    removeCookie(name) {
        this.setCookie(name, 'remove', -1)
        return this;
    }
};