博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js错误: Unexpected number in JSON at position 2792 value里面有双引号怎么解决
阅读量:6985 次
发布时间:2019-06-27

本文共 1055 字,大约阅读时间需要 3 分钟。

源头

  出现这个报错提示,大家从错误就可以看的出来,这就是json的错误,一般来说都是json格式出现了错误,本人遇到比较多的情况就是json字符串里面出现了一些会影响json格式的符号,这次出现这个错误的原因就是json字符串里面出现了引号。

事发–血案

  今天客户让我查询一个合同,但是打开合同具体信息时发现合同页面里面都是空白,自然而然就用浏览器调试,发现了这个错。
  
    遇到这种问题没办法了,只能检查把自己的json字符串显示出来查看看是否存在特别的字符,一般来说像反斜杠,单引号,双引号,回车,以及空字符串之类的,而我本次遇到的就是其中一个属性的值为双引号。一般来说遇到特殊符号用过replace方法替换掉就是了,但是这个双引号和其他符号不同,因为他和json格式自带的双引号一模一样,替换掉那json自带的双引号也就被替换掉了,所以我用了一个比较笨的方法来解决此事。
  这个方法就是找规律,json自带的双引号无非就是 “:”,",",{","} 这四种,我就把这四种先替换成单引号,再把剩余的双引号替换为中文的双引号,最后再把这四种再恢复就可以了
var a=’${c}’
var b=a.replace(/":"/g,"’:’");
var d=b.replace(/","/g,"’,’");
var e=d.replace(/"}/g,"’}");
var f=e.replace(/{"/g,"{’");
var g=f.replace(/"/g,"“");
var h=g.replace(/’/g,""");

当然了,这个方法只适用于一般的json问题,如果你的json的value值里面的双引号格式和json自带的双引号格式一模一样,请恕我暂时无能为力。

总结
  js里面出现这种问题就找里面是不是有特殊符号就是了,因为特殊符号破坏了json。总之我们遇到问题不要慌乱,要冷静下来寻找方法,可以replace的直接replace,不能的想办法replace,办法总是比问题多的。
---------------------
作者:dongbeihuxiao
来源:CSDN
原文:https://blog.csdn.net/dongbeihuxiao/article/details/92990106
版权声明:本文为博主原创文章,转载请附上博文链接!

转载于:https://www.cnblogs.com/dongbeihuxiao/p/11057534.html

你可能感兴趣的文章
SpringAOP拦截Controller,Service实现日志管理(自定义注解的方式)
查看>>
读《白帽子讲Web安全》之安全意识篇(一)
查看>>
GLSL三种修饰符区别与用途(uniform,attribute和varying)
查看>>
python django django-debug-toolbar 加载缓慢,不能使用。
查看>>
操作系之进程调度及算法详解
查看>>
PHPexcel实列
查看>>
Butterknife 的简单使用 和 配合 Butterknife的插件 Zelezny
查看>>
Magento利用input type=”file”上传图片
查看>>
Android音频开发(4):如何存储和解析wav文件
查看>>
Handler延迟事件使用
查看>>
【DG】Oracle 19c使用dbca来搭建物理DG
查看>>
StringBuilder 、StringBuffer 、 String
查看>>
android studio下NDK开发
查看>>
C#MysqlHelper
查看>>
SpringMVC Hello World 实例
查看>>
MySQL BETWEEN 用法
查看>>
vim开启自动缩进
查看>>
【转】js之iframe子页面与父页面通信
查看>>
java设计模式_模版模式
查看>>
摄像机平滑更随脚本
查看>>