JSON未定义的值类型

时间:2012-12-10 07:35:57

标签: json

我遇到了这个JSON代码。我注意到它使用了undefined值。我在哪里可以找到有关此值类型的更多信息?

  tracks:[
     (         {
        codec:"h264",
        language:undefined,
        id:1,
        bitrate:785236,
        content:"video"
     }         ),
     (         {
        codec:"aac",
        language:undefined,
        id:2,
        bitrate:75969,
        content:"audio"
     }         )
  ],

2 个答案:

答案 0 :(得分:60)

  • undefined 不是有效的json值,即使它有效 JavaScript的。来自the official json standard (ECMA-404,第5节):

      

    JSON值可以是对象,数组,数字,字符串,true,false或null。

  • 对于json,请使用 null 而不是 undefined { "something": null }

答案 1 :(得分:4)

undefined是一种特殊类型,它只是表示变量language未初始化或可能尚未定义。

null中的

javascript只是表示没有值,它也可以用来表示数字和字符串以及对象的“无值”。undefined值也是表示缺少值,它是尚未初始化的变量的值以及从object属性或array元素获取的值不存在的值 undefined是一个预定义的全局变量,初始化为未定义的值。

nullundefined没有任何属性或方法。事实上,使用.[]访问这些值的属性或方法会导致{{ 1}}。