增加一个判断,会更合理,确保第一次写入时不会报错
来源:4-9 Storage封装

JohnsonXm
2020-03-24
对setItem方法代码进行了补充:
setItem(key,value,module_name){
if(module_name){
let val = this.getItem(module_name);
if(!val){ //增加一个判断,会更合理,确保第一次写入时不会报错
this.setItem(module_name,{});
}else{
val[key] = value;
this.setItem(module_name,val); //使用递归
}
}else{
let val = this.getStorage();
val[key] = value;
window.sessionStorage.setItem(STORAGE_KEY,JSON.stringify(val));
}
}
if(!val){ //增加一个判断,会更合理,确保第一次写入时不会报错
this.setItem(module_name,{});
}
写回答
1回答
-
河畔一角
2020-03-25
可以这么写,虽然避免了报错,却插入了无用数据。还是建议大家在用的时候,确保有没有这个模块,避免无用数据插入。
00
相似问题