为了账号安全,请及时绑定邮箱和手机立即绑定

JSON.parse的异常怎么处理

JSON.parse的异常怎么处理

斯蒂芬大帝 2019-03-20 14:13:59
JSON.parse的异常怎么处理
查看完整描述

2 回答

?
森林海

TA贡献2011条经验 获得超2个赞

对于JSON.parse的异常处理一般大家只是严格处理json字符串,字符串本身必须带引号,数组的话,数组每一项必须带引号,对象的话,对象的键值都必须带双引号;
所以如果客户端传来的字符串不正确,JSON.parse()会报错,使程序出现异常;从而使程序退出;
这是需要一个程序捕获异常,让程序能正常运行下去;
这里运用了promise捕获异常的方法;
promise对象的catch方法会自动捕获异常程序;不用设置reject回调;

查看完整回答
反对 回复 2019-03-24
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

第一次进页面没问题,再返回上一页,再进来就报错了,除非手动强制刷新才出来,获取的数据确实打印出来了,就在JSON.parse 这里报错,报错如下:
load fail: Unexpected token o in JSON at position 1

百度了几个看的不懂:
JSON.Parse,Uncaught SyntaxError: Unexpected token o duplicate
JSON.parse Uncaught SyntaxError: Unexpected token o duplicate
其中我用了 backbone 的路由跳转的,如果正常跳转可能没有这个问题...
感谢各位花时间帮我解答,找到问题所在和解决方法了,就是我采纳的那位大兄弟:

if (typeof airport === 'string') {
airport = JSON.parse(airport)
}

查看完整回答
反对 回复 2019-03-24
  • 2 回答
  • 0 关注
  • 1543 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信