我不知道我在json.parse中遇到的语法错误是什么问题我使用的代码如下
Storage.prototype.setObject = function(key, value) {
this.setItem(key, JSON.stringify(value));
}
Storage.prototype.getObject = function(key) {
var value = this.getItem(key);
return value && JSON.parse(value);
}
function main() {
var data = {
"a":"something1",
"b":"something2"
};
sessionStorage.setObject('data',data);
var newData = sessionStorage.getObject('data');
console.log(newData);
}
在调用getObject(' data')时,我收到错误" firefox"虽然"没有错误"在chrome pls帮助我找出我在上面单独运行示例代码的问题,它对我来说很好,但在我的项目中我做同样的事情会导致错误。
答案 0 :(得分:1)
我在Firefox或Chrome中都没有出现任何错误。但是,您可以通过向try/catch
方法添加getObject
块来捕获此异常以进行调试
Storage.prototype.getObject = function(key) {
var value = this.getItem(key);
if (value) {
try {
value = JSON.parse(value);
} catch (err) {
console.error("Error parsing stored data: " + err);
}
}
}