js錯誤: Unexpected number in JSON at position 2792 value裏面有雙引號怎麼解決

源頭
  出現這個報錯提示,你們從錯誤就能夠看的出來,這就是json的錯誤,通常來講都是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自帶的雙引號格式如出一轍,請恕我暫時無能爲力。.net


總結
  js裏面出現這種問題就找裏面是否是有特殊符號就是了,由於特殊符號破壞了json。總之咱們遇到問題不要慌亂,要冷靜下來尋找方法,能夠replace的直接replace,不能的想辦法replace,辦法老是比問題多的。
---------------------
做者:dongbeihuxiao
來源:CSDN
原文:https://blog.csdn.net/dongbeihuxiao/article/details/92990106
版權聲明:本文爲博主原創文章,轉載請附上博文連接!調試

相關文章
相關標籤/搜索