码迷,mamicode.com
首页 > Web开发 > 详细

JSON.parse 方法解析纯数字键值对报错的解决方法

时间:2020-12-28 11:08:15      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:注意   img   ===   情况   rip   就是   说明   json格式   后端   

1.起因

一般json格式的key键都是字符串,但是今天碰到一个奇葩的json格式,键值是纯数字,技术图片,

 

这种用JSON.parse的原生方法解析的话会报错,因为这个方法是严格按照JSON格式进行解析的,看后端的写法是这样技术图片

 

 ,估计也没注意吧....真是带来了很多麻烦

 

2.解决

JSON解析除了JSON.parse还有另外一种方法,直接使用eval方法解析

eval(‘(‘ + response.data + ‘)‘)

这样解析的JSON就不会报错,虽然eval不推荐使用,因为效率没JSON高,而且会加载里面的JavaScript语句,但是碰上这种情况不得不用,还是要根据具体的情景来选择相应的技术解决.

然后代码的写法就是这个样子的

          let repData = response.data

          if (typeof repData === ‘string‘) {
            repData = eval(‘(‘ + response.data + ‘)‘)
          }

如果axios请求后端返回的是对象的话,说明axios已经把数据解析成对象了,我们就不用做任何的处理了,如果不是对象,是字符串,说明传回来了那种奇葩格式,我们就需要判断一下,用eval解析.

 

JSON.parse 方法解析纯数字键值对报错的解决方法

标签:注意   img   ===   情况   rip   就是   说明   json格式   后端   

原文地址:https://www.cnblogs.com/lishuaiqi/p/14170152.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!