我正在用 js/jquery 编写一个小脚本,用于保存表单字段,以便用户保存表单并稍后完成它们,目前我正在使用 sessionStorage 来完成此任务,没有问题,但我想增强脚本以允许开发人员定义 if他们想使用本地存储或 session 存储,但我不知道如何去做,因为我仍然是这个领域的菜鸟:P。在我的脑海中,我有一个计划,开发人员可以定义一个属性,让我们在表单标签上定义“数据存储类型”,他们可以使用 session 或本地存储对其进行赋值,然后我可以使用 Jquery 来获取该值,如下所示:
value = $(this).attr('data-storage-type');
然后从那里开始保存我的存储,但我对 jquery/js 还很陌生,所以我想知道我是否可以调用他们在这个变量中定义的存储类型来调用作为构建的一部分的 get 和 setItem 函数在 Webstorage api 中。
所以如果 value =“localStorage”,我可以这样调用它吗:
value.getItem(arg);
因为我很确定你不能这样做:
"localStorage".getItem(arg);
有什么办法可以调用这个吗?或者有更好的方法来解决这个问题吗?谢谢!
最佳答案
你可以做类似的事情
window[value].getItem(arg);// where value can be 'localStorage' string
或者你可以使用 switch 语句
switch(value) {
case 'localStorage':
localStorage.getItem(arg);
break;
case 'sessionStorage':
sessionStorage.getItem(arg);
break;
}
关于javascript - 如何使用包含Web Storage类型的字符串值在JS/JQuery中调用Web Storage API函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38874421/