JSON.parse 數(shù)據(jù)不完整的解決方法
一、問(wèn)題描述
使用 JSON.parse 反序列化,出現(xiàn)數(shù)據(jù)丟失現(xiàn)象。
字符串json數(shù)據(jù):
{ "varImageList": [ { "variationValue": "Black ", "imageList": [ { "variationValue": "Black ", "image_base64": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAB/20210713_11ca63ca7457a70070587ee7f2b30e1b.jpg", "image_url": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAB/20210713_11ca63ca7457a70070587ee7f2b30e1b.jpg", "imageAddress": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAB/20210713_11ca63ca7457a70070587ee7f2b30e1b.jpg", "image_address": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAB/20210713_11ca63ca7457a70070587ee7f2b30e1b.jpg", "type": "image/jpeg" } ] }, { "variationValue": "Gray ", "imageList": [ { "variationValue": "Gray ", "image_base64": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/20211124_4559fbad3a4e4b5c3a8b2383135334a6.jpg", "image_url": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/20211124_4559fbad3a4e4b5c3a8b2383135334a6.jpg", "imageAddress": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/20211124_4559fbad3a4e4b5c3a8b2383135334a6.jpg", "image_address": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/20211124_4559fbad3a4e4b5c3a8b2383135334a6.jpg", "type": "image/jpeg" } ] }, { "variationValue": "Brown ", "imageList": [ { "variationValue": "Brown ", "image_base64": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAR/20210713_885a0dd07f764f10f8d4e565db4f215d.jpg", "image_url": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAR/20210713_885a0dd07f764f10f8d4e565db4f215d.jpg", "imageAddress": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAR/20210713_885a0dd07f764f10f8d4e565db4f215d.jpg", "image_address": "https://b2bfiles1.gigab2b.cn/image/wkseller/8658/WF212761AAR/20210713_885a0dd07f764f10f8d4e565db4f215d.jpg", "type": "image/jpeg" } ] } ] }
JSON.parse 序列化后結(jié)果:
{ "varImageList": [ { "variationValue": "Black", "imageList": [] }, { "variationValue": "Gray", "imageList": [] }, { "variationValue": "Brown", "imageList": [] } ] }
imageList 數(shù)據(jù)丟失。
使用 eval 反序列化,數(shù)據(jù)正常;
var json = eval('(' + strJson + ')');
二、產(chǎn)生原因
這是因?yàn)? JSON.parse 對(duì) json字符串?dāng)?shù)據(jù)要求比較嚴(yán)格。像上面數(shù)據(jù)丟失原因,就是因?yàn)閷傩灾岛缶Y有空字符導(dǎo)致的。使用 trim() 方法去除兩邊空字符即可;
到此這篇關(guān)于JSON.parse 數(shù)據(jù)不完整的解決方法的文章就介紹到這了,更多相關(guān)JSON.parse 數(shù)據(jù)不完整內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- JSON.parse處理非標(biāo)準(zhǔn)Json數(shù)據(jù)出錯(cuò)的解決
- JSON.parse()和JSON.stringify()使用介紹
- 關(guān)于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
- JSON.parseObject和JSON.toJSONString實(shí)例詳解
- javascript中JSON.parse()與eval()解析json的區(qū)別
- JS使用JSON.parse(),JSON.stringify()實(shí)現(xiàn)對(duì)對(duì)象的深拷貝功能分析
- 詳解關(guān)于JSON.parse()和JSON.stringify()的性能小測(cè)試
- JSON中key動(dòng)態(tài)設(shè)置及JSON.parse和JSON.stringify()的區(qū)別
- 淺談JSON.parse()和JSON.stringify()
相關(guān)文章
說(shuō)說(shuō)JSON和JSONP 也許你會(huì)豁然開(kāi)朗
說(shuō)到AJAX就會(huì)不可避免的面臨兩個(gè)問(wèn)題,第一個(gè)是AJAX以何種格式來(lái)交換數(shù)據(jù)?第二個(gè)是跨域的需求如何解決2012-09-09實(shí)現(xiàn)單層json按照key字母順序排序的示例
下面小編就為大家分享一篇實(shí)現(xiàn)單層json按照key字母順序排序的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12javascript操作JSON的要領(lǐng)總結(jié)
JSON是 JavaScript 原生格式,這意味著在 JavaScript 中處理 JSON數(shù)據(jù)不須要任何特殊的 API 或工具包,需要的朋友可以了解下2012-12-12js解析與序列化json數(shù)據(jù)(二)序列化探討
上一節(jié)我們講解了JSON.stringify()的基本用法,這一節(jié)我們來(lái)重點(diǎn)探討一下序列化,單獨(dú)或組合使用這兩個(gè)參數(shù)(過(guò)濾器/數(shù)組),可以更全面深入地控制JSON的序列化,感興趣的朋友可以了解下,或許對(duì)你學(xué)習(xí)json有所幫助2013-02-02Javascript生成json的函數(shù)代碼(可以用php的json_decode解碼)
這幾天迷上了JSON,連項(xiàng)目中一些XML的工作都交給了JSON,話(huà)說(shuō)JSON真的比XML方便的多啊2012-06-06