栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在JSON中表示null

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在JSON中表示null

让我们评估每个的解析:

http://jsfiddle.net/brandonscript/Y2dGv/

var json1 = '{}';var json2 = '{"myCount": null}';var json3 = '{"myCount": 0}';var json4 = '{"myString": ""}';var json5 = '{"myString": "null"}';var json6 = '{"myArray": []}';console.log(JSON.parse(json1)); // {}console.log(JSON.parse(json2)); // {myCount: null}console.log(JSON.parse(json3)); // {myCount: 0}console.log(JSON.parse(json4)); // {myString: ""}console.log(JSON.parse(json5)); // {myString: "null"}console.log(JSON.parse(json6)); // {myArray: []}

TL;博士 在这里:

json2 变量中的片段是JSON规范所表示的方式

null
。但是,一如既往,这取决于您的工作-
有时,“正确”的做法并不总是适合您的情况。使用您的判断并做出明智的决定。


JSON1

{}

这将返回一个空对象。那里没有数据,只会告诉您您要寻找的任何键(无论是键还是其他键

myCount
)都是type
undefined


JSON2

{"myCount": null}

在这种情况下,

myCount
实际上是定义了,尽管其值为
null
。这是
一样的两个“不
undefined
,不
null
”,如果你是一个条件或其他测试,这可能会成功,而JSON1会失败。

这是

null
按照JSON规范表示的确定方式。


JSON3

{"myCount": 0}

在这种情况下,myCount为0。与

null
,和并不相同
false
。如果您的条件语句评估为
myCount >0
,那么这可能是值得的。此外,如果您基于此处的值运行计算,则0可能会有用。
null
但是,如果您要进行测试,那么这实际上是行不通的。


JSON4

{"myString": ""}

在这种情况下,您将得到一个空字符串。同样,与JSON2一样,它已定义,但它为空。您可以测试,

if (obj.myString =="")
但不能测试
null
undefined


JSON5

{"myString": "null"}

这很可能会给您带来麻烦,因为您将 字符串 值设置为null。在这种情况下,

obj.myString == "null"
但它是 不是
==null


JSON6

{"myArray": []}

这将告诉您数组

myArray
存在,但它为空。如果您要对进行计数或评估,这将很有用
myArray
。例如,假设您要评估用户发布的照片​​数量-
您可以这样做
myArray.length
,它将返回
0
:defined,但没有发布照片。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/398143.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号