如何删除所有会话存储,其关键字是一些字符"abc"当页面刷新时

how to remove all sessionstorage whose key is some character "abc" while pages refresh?

本文关键字:quot 字符 abc 刷新 关键字 删除 何删除 存储 会话      更新时间:2023-09-26

你能告诉我如何删除所有的会话值,其关键是一些字符"abc",而页面刷新?我知道如何在页面刷新时获得事件,我需要删除会话中键具有字符"abc"的所有值?

window.onbeforeunload = function(e) {
  return 'Dialog text here.';
};

我们在sessionStorage.setItem("abc","test")中存储值;由于

for (var key in sessionStorage) {
  if (key.indexOf("abc") === 0) {
    sessionStorage.removeItem(key);
  }
}

我还没有在所有的浏览器中测试过,但是以这种方式进行迭代似乎是可行的。此版本仅检查字符串是否以"abc"开头(-1表示不存在,其他内容将在字符串后面)

由于没有办法在HTML5 sessionStorage中获得所有键的列表,你需要从0循环到sessionStorage。使用sessionStorage.key(index())方法来检索每个键。

一旦你有了一个键,它将是一个字符串值,你必须将它与正则表达式(regex)进行比较,看看它是否匹配想要删除的值(在你的情况下"以"abc"开头)

如果一个键匹配要删除的值,使用sessionStorage.remove(key)从会话存储中删除它