亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript設(shè)置失效時間清除本地存儲數(shù)據(jù)的幾種方法

 更新時間:2025年02月25日 11:04:34   作者:the_flash  
這篇文章介紹了如何使用localStorage和sessionStorage設(shè)置失效時間來清除本地存儲的數(shù)據(jù),并提供了一種自動清除過期數(shù)據(jù)的方法,需要的朋友可以參考下

要通過設(shè)置失效時間清除本地存儲的數(shù)據(jù),可以使用 localStorage 或 sessionStorage,并結(jié)合 JavaScript 實現(xiàn)。以下是具體步驟:

1. 使用 localStorage 存儲數(shù)據(jù)并設(shè)置失效時間

// 存儲數(shù)據(jù)并設(shè)置失效時間(單位:毫秒)
function setLocalStorageWithExpiry(key, value, expiryInMilliseconds) {
    const now = new Date();
    const item = {
        value: value,
        expiry: now.getTime() + expiryInMilliseconds
    };
    localStorage.setItem(key, JSON.stringify(item));
}

// 獲取數(shù)據(jù)并檢查是否失效
function getLocalStorageWithExpiry(key) {
    const itemStr = localStorage.getItem(key);
    if (!itemStr) {
        return null;
    }
    const item = JSON.parse(itemStr);
    const now = new Date();
    if (now.getTime() > item.expiry) {
        localStorage.removeItem(key);
        return null;
    }
    return item.value;
}

// 示例:存儲數(shù)據(jù)并設(shè)置 1 小時后失效
setLocalStorageWithExpiry('myKey', 'myValue', 60 * 60 * 1000);

// 示例:獲取數(shù)據(jù)
const value = getLocalStorageWithExpiry('myKey');
console.log(value); // 輸出: myValue (如果未失效) 或 null (如果已失效)

2. 使用 sessionStorage 存儲數(shù)據(jù)并設(shè)置失效時間

sessionStorage 的生命周期與瀏覽器會話相關(guān),關(guān)閉瀏覽器后數(shù)據(jù)會被清除。如果需要手動設(shè)置失效時間,可以使用類似 localStorage 的方法。

// 存儲數(shù)據(jù)并設(shè)置失效時間(單位:毫秒)
function setSessionStorageWithExpiry(key, value, expiryInMilliseconds) {
    const now = new Date();
    const item = {
        value: value,
        expiry: now.getTime() + expiryInMilliseconds
    };
    sessionStorage.setItem(key, JSON.stringify(item));
}

// 獲取數(shù)據(jù)并檢查是否失效
function getSessionStorageWithExpiry(key) {
    const itemStr = sessionStorage.getItem(key);
    if (!itemStr) {
        return null;
    }
    const item = JSON.parse(itemStr);
    const now = new Date();
    if (now.getTime() > item.expiry) {
        sessionStorage.removeItem(key);
        return null;
    }
    return item.value;
}

// 示例:存儲數(shù)據(jù)并設(shè)置 1 小時后失效
setSessionStorageWithExpiry('myKey', 'myValue', 60 * 60 * 1000);

// 示例:獲取數(shù)據(jù)
const value = getSessionStorageWithExpiry('myKey');
console.log(value); // 輸出: myValue (如果未失效) 或 null (如果已失效)

3. 自動清除過期數(shù)據(jù)

你可以定期檢查并清除過期的數(shù)據(jù):

function clearExpiredLocalStorage() {
    for (let i = 0; i < localStorage.length; i++) {
        const key = localStorage.key(i);
        getLocalStorageWithExpiry(key);
    }
}

// 每隔一段時間檢查一次
setInterval(clearExpiredLocalStorage, 60 * 60 * 1000); // 每小時檢查一次

通過這些方法,你可以有效地管理本地存儲的數(shù)據(jù),并確保在設(shè)定的失效時間后自動清除。

到此這篇關(guān)于JavaScript設(shè)置失效時間清除本地存儲數(shù)據(jù)的幾種方法的文章就介紹到這了,更多相關(guān)JavaScript設(shè)置失效時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • js正則表達式之前瞻后顧與非捕獲分組

    js正則表達式之前瞻后顧與非捕獲分組

    話說自從學(xué)前端以來聽到過多次這樣的"笑話",程序員分為會正則的和不會正則的,可見正則的重要性,這篇文章主要給大家介紹了關(guān)于js正則表達式之前瞻后顧與非捕獲分組的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • js實現(xiàn)文字截斷功能

    js實現(xiàn)文字截斷功能

    這篇文章主要為大家詳細介紹了js代碼如何實現(xiàn)文字截斷功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Elasticsearch實現(xiàn)復(fù)合查詢高亮結(jié)果功能

    Elasticsearch實現(xiàn)復(fù)合查詢高亮結(jié)果功能

    這篇文章主要介紹了Elasticsearch實現(xiàn)復(fù)合查詢,高亮結(jié)果功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • JS實現(xiàn)頁面長時間不操作退出到登錄頁面的示例代碼

    JS實現(xiàn)頁面長時間不操作退出到登錄頁面的示例代碼

    這篇文章主要介紹了JS實現(xiàn)頁面長時間不操作退出到登錄頁面的示例代碼,通過在head標(biāo)簽中引入jquey和頁面長時間不操作的js頁面,結(jié)合實例代碼講解的非常詳細,需要的朋友可以參考下
    2024-03-03
  • 回車直接實現(xiàn)點擊某按鈕的效果即觸發(fā)單擊事件

    回車直接實現(xiàn)點擊某按鈕的效果即觸發(fā)單擊事件

    這篇文章主要介紹了回車直接實現(xiàn)點擊某按鈕的效果即觸發(fā)單擊事件,需要的朋友可以參考下
    2014-02-02
  • JS自動生成動態(tài)HTML驗證碼頁面

    JS自動生成動態(tài)HTML驗證碼頁面

    這篇文章主要介紹了JS自動生成動態(tài)HTML驗證碼頁面,輸入錯誤自動清空輸入框的功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 詳解JavaScript自定義函數(shù)

    詳解JavaScript自定義函數(shù)

    這篇文章主要介紹了JavaScript自定義函數(shù)的相關(guān)資料,文中講解非常細致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • JS實現(xiàn)利用兩個隊列表示一個棧的方法

    JS實現(xiàn)利用兩個隊列表示一個棧的方法

    這篇文章主要介紹了JS實現(xiàn)利用兩個隊列表示一個棧的方法,簡單分析了使用兩個隊列表示一個棧的原理,并結(jié)合具體實例分析了javascript相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12
  • 純javascript實現(xiàn)簡單下拉刷新功能

    純javascript實現(xiàn)簡單下拉刷新功能

    這篇文章主要介紹了純javascript實現(xiàn)簡單下拉刷新功能,沒有借助任何的框架,十分簡單實用,有需要的小伙伴來參考下吧。
    2015-03-03
  • webpack-dev-server自動更新頁面方法

    webpack-dev-server自動更新頁面方法

    下面小編就為大家分享一篇webpack-dev-server自動更新頁面方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02

最新評論