900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 处理 JSON null 和空数组及对象

处理 JSON null 和空数组及对象

时间:2020-11-01 00:30:52

相关推荐

处理 JSON null 和空数组及对象

描述了对 JSON 数据中使用的 null 和空数组及对象的处理。

JSON 数据具有 null 和空数组及对象的概念。此部分说明其中每个概念如何映射到 null 和未设置的数据对象概念。

Null 值

JSON 具有特殊值 null,可以对任何数据类型设置该值,包括数组、对象、数字和布尔类型。

34{ Schema types35 "id":null,(integer)36 "firstName": null,(string)37 "address": null,(Address complex type with maxOccurs = 1)38 "homeAddresses":null(Address complex type with maxOccurs > 1)39 "phoneNumbers": null(string with maxOccurs > 1)40}

考虑上一个示例,其中具有 null 值的 JSON 数据被解析为数据对象,以下情况成立:

id - 如果在该模式中将该属性定义为可空,那么它将设置为 null。如果该属性未定义为可空,那么它将抛出异常。firstName - 在该属性上设置 null 值。address - 如果在该模式中将该属性定义为可空,那么它将设置为 null。如果该属性未定义为可空,那么它将抛出异常。homeAddresses - 模式不允许该属性可空,因此未设置该属性。phoneNumbers - 必须在该模式中将该属性定义为可空,否则它将抛出异常。

当序列化为 JSON 时,如果数据对象中的属性值为 null,那么它将序列化为 JSON null。

未设置属性

JSON 数据中不存在的属性映射到数据对象空间中的未设置属性。 如果数据对象中的属性未进行设置(未设置),那么该属性将不会出现在 JSON 数据中。

空属性

JSON 空概念适用于数组和对象,如下所示。

41{42 "address":{}43"homeAddresses":[]44"phoneNumbers":[]45}

如果是地址,那么会创建空地址数据对象。数据对象不具有空列表的概念。因此,针对这两个属性,不会对数据对象采取任何操作。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。