【发布时间】:2017-06-29 16:29:12
【问题描述】:
我只是构建了一个 jquery 插件来处理一些数据存储。 当我尝试从存储中读取时,结果是读取的项目数据。暂时还好……
当我添加时
sessionStorage.setItem('test','some data');
或删除
sessionStorage.removeItem('test');
一个项目,我总是在console.log 中得到一个undefined
但它做了我应该做的。
我怎样才能摆脱未定义的任何想法???
我尝试的是
var result = sessionStorage.setItem('test','some data');
以为这会将它打印到 var 但它不会 ^^
我的代码:
(function ($) {
$.storage = {
add: function(name,value){
if(typeof value === 'object' )
{
/** convert object to json **/
value = JSON.stringify(value);
}
/** add to storage **/
sessionStorage.setItem(name,value);
},
read: function(name){
/** read from storage **/
var item = sessionStorage.getItem(name);
try {
item = $.parseJSON(item);
}catch(e){}
return item;
},
remove: function(name){
/** delete from storage **/
sessionStorage.removeItem(name);
},
clear: function(){
/** clear storage **/
sessionStorage.clear();
}
}
})(jQuery);
解决方案
我尝试在控制台中添加存储...当我在脚本中使用它时,它什么也没返回!对不起
【问题讨论】:
-
“我怎样才能摆脱未定义的,有什么想法吗???” ——你为什么想要?
-
因为它似乎是错误的......当我编程时,运行我的应用程序并且 undefined 出现了好几次......
-
@Dwza,我用你的代码创建了一个小提琴jsfiddle.net/satpalsingh/mCNFT。你能在小提琴中重现你的问题吗?另请注意,IE8+ 浏览器支持
sessionStorage,请参阅caniuse.com/#search=sessionStorage
标签: javascript jquery session-storage