JSON.parse 数据不完整的解决方法

 更新时间:2023年07月21日 15:53:15   作者:yandype  
本文主要介绍了JSON.parse 数据不完整的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、问题描述

使用 JSON.parse 反序列化,出现数据丢失现象。

字符串json数据:

{
    "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 序列化后结果:

{
    "varImageList": [
        {
            "variationValue": "Black",
            "imageList": []
        },
        {
            "variationValue": "Gray",
            "imageList": []
        },
        {
            "variationValue": "Brown",
            "imageList": []
        }
    ]
}

imageList 数据丢失。

使用 eval 反序列化,数据正常;

var json = eval('(' + strJson + ')'); 

二、产生原因

这是因为  JSON.parse 对 json字符串数据要求比较严格。像上面数据丢失原因,就是因为属性值后缀有空字符导致的。使用 trim() 方法去除两边空字符即可;

到此这篇关于JSON.parse 数据不完整的解决方法的文章就介绍到这了,更多相关JSON.parse 数据不完整内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 对比分析json及XML

    对比分析json及XML

    本文是根据自己对json、xml的了解,参考了部分资料,结合网上的一些视频教程总结出来的一篇个人对于json和XML的感悟,以及他们之间在使用的时候的优劣,这里推荐给大家。
    2014-11-11
  • Javascript生成json的函数代码(可以用php的json_decode解码)

    Javascript生成json的函数代码(可以用php的json_decode解码)

    这几天迷上了JSON,连项目中一些XML的工作都交给了JSON,话说JSON真的比XML方便的多啊
    2012-06-06
  • json实现前后台的相互传值详解

    json实现前后台的相互传值详解

    这篇文章主要介绍了json实现前后台的相互传值详解,需要的朋友可以参考下
    2015-01-01
  • 告诉大家什么是JSON

    告诉大家什么是JSON

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。
    2008-06-06
  • nodejs教程 安装express及配置app.js文件的详细步骤

    nodejs教程 安装express及配置app.js文件的详细步骤

    express.js是nodejs的一个MVC开发框架,并且支持jade等多种模板。下面简单来说说express的安装和app.js文件的配置,然后在今后的教程中一步一步使用express.js搭建个聊天室
    2013-05-05
  • javascript JSON操作入门实例

    javascript JSON操作入门实例

    JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
    2010-04-04
  • 浅谈JSON5解决了JSON的两大痛点

    浅谈JSON5解决了JSON的两大痛点

    这篇文章主要介绍了浅谈JSON5解决了JSON的两大痛点,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 半个小时学json(json传递示例)

    半个小时学json(json传递示例)

    这篇文章主要介绍了半个小时学json(json传递示例),主要包括一维数组与二维数组,需要的朋友可以参考下
    2016-12-12
  • 一文了解什么是JWT

    一文了解什么是JWT

    JSON WEB Token是一种基于JSON的、用于在网络上声明某种主张的令牌,由三部分组成: 头信息, 消息体和签名,下面就一起来了解一下什么是JWT
    2023-05-05
  • json跟xml的对比分析

    json跟xml的对比分析

    JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形式,很难分出胜负。
    2008-06-06

最新评论