Подтвердить что ты не робот

JSON undefined тип значения

Я столкнулся с этим кодом JSON. Я заметил, что он использует значение undefined. Где можно найти дополнительную информацию об этом типе значений?

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

Ответ 1

  • undefined не является допустимым значением json, хотя оно действительно в JavaScript. Из официального стандарта json (ECMA-404, раздел 5):

    Значение JSON может быть объектом, массивом, числом, строкой, значением true, false или null.

  • Для json используйте null вместо undefined: { "something": null }

Ответ 2

undefined - это особый тип, в котором он просто указывает, что переменная language не инициализирована или может быть еще не определена.

null в javascript просто указывает на отсутствие значения, и его также можно использовать для указания "нет значения" для чисел и строк, а также объектов. Значение undefined также означает отсутствие значения, оно это значение переменных, которые не были инициализированы, и значение, когда вы получаете из свойства object или array, который не существует undefined - это предопределенная глобальная переменная, которая инициализируется значением undefined.

null и undefined не имеют никаких свойств или методов. Фактически, использование . или [] для доступа к свойству или методу этих значений вызывает TypeError.