localStorage

/**
 * localStorage 存貯
 * 目前對象值如果是函數 、RegExp等特殊對象存貯會被忽略
 * @param { String } key  屬性
 * @param { string } value 值
 */
export const localStorageSet = (key, value) => {
    if (typeof (value) === 'object') value = JSON.stringify(value);
    localStorage.setItem(key, value)
};

/**
 * localStorage 獲取
 * @param {String} key  屬性
 */
export const localStorageGet = (key) => {
    return localStorage.getItem(key)
};

/**
 * localStorage 移除
 * @param {String} key  屬性
 */
export const localStorageRemove = (key) => {
    localStorage.removeItem(key)
};

/**
 * localStorage 存貯某一段時間失效
 * @param {String} key  屬性
 * @param {*} value 存貯值
 * @param { number } expire 過期時間,毫秒數
 */
export const localStorageSetExpire = (key, value, expire) => {
    if (typeof (value) === 'object') value = JSON.stringify(value);
    localStorage.setItem(key, value);
    setTimeout(() => {
        localStorage.removeItem(key)
    }, expire)
};

/**
 * sessionStorage 存貯
 * @param {String} key  屬性
 * @param {*} value 值
 */
export const sessionStorageSet = (key, value) => {
    if (typeof (value) === 'object') value = JSON.stringify(value);
    sessionStorage.setItem(key, value)
};

/**
 * sessionStorage 獲取
 * @param {String} key  屬性
 */
export const sessionStorageGet = (key) => {
    return sessionStorage.getItem(key)
};

/**
 * sessionStorage 刪除
 * @param {String} key  屬性
 */
export const sessionStorageRemove = (key) => {
    sessionStorage.removeItem(key)
};

/**
 * sessionStorage 存貯某一段時間失效
 * @param {String} key  屬性
 * @param {*} value 存貯值
 * @param {String} expire 過期時間,毫秒數
 */
export const sessionStorageSetExpire = (key, value, expire) => {
    if (typeof (value) === 'object') value = JSON.stringify(value);
    sessionStorage.setItem(key, value);
    setTimeout(() => {
        sessionStorage.removeItem(key)
    }, expire)
};

/**
 * cookie 存貯
 * @param {String} key  屬性
 * @param {*} value  值
 * @param { String } expire  過期時間,單位天
 */
export const cookieSet = (key, value, expire) => {
    const d = new Date();
    d.setDate(d.getDate() + expire);
    document.cookie = `${key}=${value};expires=${d.toUTCString()}`
};

/**
 * cookie 獲取
 * @param {String} key  屬性
 */
export const cookieGet = (key) => {
    const cookieStr = unescape(document.cookie);
    const arr = cookieStr.split('; ');
    let cookieValue = '';
    for (let i = 0; i < arr.length; i++) {
        const temp = arr[i].split('=');
        if (temp[0] === key) {
            cookieValue = temp[1];
            break
        }
    }
    return cookieValue
};

/**
 * cookie 刪除
 * @param {String} key  屬性
 */
export const cookieRemove = (key) => {
    document.cookie = `${encodeURIComponent(key)}=;expires=${new Date()}`
};

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章