65

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

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

2 回答 2

115
  • undefined不是有效的 JSON 值,即使它在 javascript 中有效。

    来自官方 JSON 标准 (ECMA-404,第 5 节):

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

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

于 2013-02-18T22:56:10.833 回答
4

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

nullinjavascript简单地表示没有值,也可以用于表示数字和字符串以及对象的“无值”。undefinedvalue 也表示没有值,它是尚未初始化的变量的值和从不存在 的object属性或元素获取的值是一个预定义的全局变量,它被初始化为未定义的值。arrayundefined

null并且undefined没有任何属性或方法。事实上,使用.[]访问这些值的属性或方法会导致TypeError.

于 2012-12-10T07:40:07.843 回答