位置: IT常识 - 正文

解决JSON.parse转化不规范json字符串的问题(json转pojo)

编辑:rootadmin
这篇文章主要介绍了解决JSON.parse转化不规范json字符串的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教 目录

推荐整理分享解决JSON.parse转化不规范json字符串的问题(json转pojo),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:json.parse转义字符,json.parse转义字符,jsonobject.parse转map,json.parseint,json转plist,json parse,jsonobject.parse转map,json.parseint,内容如对您有帮助,希望把文章链接给更多的朋友!

JSON.parse转化不规范json字符串问题1 json字符串中的key值没有带引号2 json字符串中的key值带的单引号3 规范的json字符串格式4 不规范json字符串的转化方法字符串转json(JSON.parse报错)问题解决方法(此方法可解析不规范格式)JSON.parse转化不规范json字符串问题

JSON.parse可以将一个json字符串转化为一个json对象。但是该方法对json字符串的格式要求比较严格,如果json字符串不太规范,转化就会报错。常见错误有两种:

1 json字符串中的key值没有带引号

key值不带引号的json字符串无法使用该方法转化,如下:

{a:1}

转化报错如下:

2 json字符串中的key值带的单引号

如果json字符串中的key值带的是单引号,也无法转化,报错相同,如下:

{'a':1}解决JSON.parse转化不规范json字符串的问题(json转pojo)

3 规范的json字符串格式

json字符串中所有的key值必须用双引号包裹才能正常转化为json对象。 如下:

{"a":1,"b":"string","c":[1,2,3]}

4 不规范json字符串的转化方法

前提是,保证json字符串数据是正确的,只不过是key没有用双引号包围,像上面提到的两点。然后可以使用eval函数进行转化,如下:

eval("({a:1})")eval("({'a':1})")

字符串转json(JSON.parse报错)

后端返回字符串类型的数组对象格式,js不能使用JSON.parse直接转,否则会报错

问题

字符串格式不是很完美,导致JSON.parse转换失败。JSON.parse()方法对字符串的格式要求极其严格。一点格式错误都不能有,否则就报异常。

解决方法(此方法可解析不规范格式)let str = "[{sec: 1, result: '123'}]"let arr = eval('(' + val + ')')console.log(arr)//[{sec: 1, result: '123'}] 此时已转化为json格式类型$parseJSON(需配合jquery使用)JSON.parseeval方法说明jquery的方法。将符合标准格式的的JSON字符串转为与之对应的JavaScript对象只能解析属性名是双引号包裹的字符串对象可将一个JavaScript代码字符串求值成特定的对象主要区别字符串必须用双引号括起来必须严格遵守json字符串格式;属性名称必须用双引号包裹;字符串必须用双引号括起来。使用场景能用JSON.parse的都可以用这个json字符串必须严格符合json格式。可以用在后端传递给前端数据格式的使用使用。对数据的严谨性可以格式不规范的时候,当你不能确认对方的数据格式是不是很严谨的时候

以上为个人经验,希望能给大家一个参考,也希望大家多多支持本站。

本文链接地址:https://www.jiuchutong.com/zhishi/312985.html 转载请保留说明!

上一篇:织梦kindeditor编辑器插入mp4视频不显示及不过滤video的方法(织梦cms怎么样)

下一篇:Discus X 3 门户改造熊掌号网页教程

  • 真我gtneo2t中框材质(realme真我gt中框)

  • 华为手机别人看是黑屏的设置(华为手机别人看了有记录吗)

  • 苹果手机可以给苹果手机充电吗(苹果手机可以给安卓手机充电吗)

  • 美版的se2是双卡双待的吗(se2美版是双卡吗)

  • 腾讯会议摄像头可以和其他软件一起用吗(腾讯会议摄像头怎么开)

  • 小米手机抖音怎么分屏(小米手机抖音怎么开直播)

  • 路由器有什么功能和作用呀(路由器什么功能包括转发)

  • glk一al00华为什么型号(华为glk aloo)

  • 一个云班课能登录几个手机(一个云班课能登几个手机)

  • 首字母下沉怎么操作(英文字母首字下沉)

  • 苹果的返回小圆点在哪里设置(苹果的返回小圆点在哪里)

  • 小米哪些手机有红外线(小米哪些手机有徕卡摄像头)

  • 支付宝怎么分身两个(vivo手机怎么分身)

  • 抖音上线时间怎么取消(抖音上线时间怎么设置)

  • qq删不了好友怎么办(qq好友删除不掉怎么办)

  • java标识符的命名规则(java标识符的命名规则正确的是)

  • qq电话静音对面会有显示吗(qq电话静音对面知道吗)

  • 打开抖音显示没有网络怎么办(打开抖音显示没有网络怎么回事)

  • 怎么开发一款社交APP(怎么开发一个属于自己的软件)

  • 快手怎么查粉丝涨幅(快手怎么查粉丝团的人)

  • 苹果xr厚度是多少毫米(xr厚度多少毫米)

  • 小米max2上市时间(小米max2什么时候发布的)

  • win10头像怎么清除(win10改头像怎么删除以前的头像)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络