javascript - 如何将字符串附加到会话存储密钥?
问题描述
我想将字符串附加到会话存储中的键,我在下面的代码中尝试过,但它不起作用
var setSession = window.sessionStorage.setItem.bind(window.sessionStorage);
window.onload = function()
{
window.sessionStorage.setItem = function(key, value) {
var newKey = "1234"+"::"+key;
alert("inside account new key "+newKey);
return setSession(newKey, value);
}
}
任何建议更感激......
解决方案
不知道你在使用什么localStorage
,sessionStorage
但这里是如何添加前缀,key
如果前缀已经存在,就不要再这样做了。此外,它删除了原始密钥:
Object.keys(localStorage).forEach(function(key) {
if(/^1234::/.test(key)) return; // Don't repeat if "1234::" exists already
localStorage[`1234::${key}`] = localStorage[key];
delete localStorage[key];
});
如果前缀1234
是一个变量,那么你可以这样做:
let ID_key = '1234';
Object.keys(localStorage).forEach(function(key) {
if(new RegExp(`^${ID_key}::`).test(key)) return; // Don't repeat if 1234 exists already
localStorage[`${ID_key}::${key}`] = localStorage[key];
delete localStorage[key];
});
推荐阅读
- angular - 如何在 Mat-Toolbar 中选择单击的链接
- javascript - 如何在没有任何空格的 URL 中托管 JSON 文件?
- discord.js - 加入 enmap 时的自定义角色
- c# - 获取 dapper.QueryMultiple 方法返回的结果集计数
- java - 运行 Pyspark 脚本时出现 Zeppelin 错误
- twitter - Twitter API 中的 Int 和 Integer
- laravel - 如何在背包中使用laravel默认认证
- ios - 如果“submit_instance_key”的值为 1,则在此数组上使用的最佳高阶函数返回 bool 值?
- android - 用于查找特定模式的 SQL Lite 语法
- python - Python 使用 pip 命令返回无效路径