Jquery 仅当媒体阵列不为空时,才读取JSON中的行

Jquery 仅当媒体阵列不为空时,才读取JSON中的行,jquery,arrays,json,ajax,get,Jquery,Arrays,Json,Ajax,Get,我只想在媒体数组不为空时读取JSON中的行 但是,下面的代码不起作用。虽然我已经定义了 (data.rows[j].media.length>=1)或 (data.rows[j].media!=未定义) 它仍将读取阵列中的空介质。 试一试 data.rows[j].media.ToString()!=“[]” 或 data.rows[j].media.ToString()!=“[]”如果im没有错误,那么在引用json对象时,长度确实有效。请尝试data.rows[j].media[0]=

我只想在媒体数组不为空时读取JSON中的行

但是,下面的代码不起作用。虽然我已经定义了

  • (data.rows[j].media.length>=1)或
  • (data.rows[j].media!=未定义)
它仍将读取阵列中的空介质。

试一试

data.rows[j].media.ToString()!=“[]”


data.rows[j].media.ToString()!=“[]”

如果im没有错误,那么在引用json对象时,长度确实有效。请尝试
data.rows[j].media[0]=null
而不是
data.rows[j].media.length>=1
。我按照您的建议尝试了上述两种方法,但它有TypeError:undefined不是对象(正在计算'data.rows[j].media[0].type')
// JSON data

{
  author: "Mary",  
  media: [ ],
},
{
  author: "Nelson",  
  media: [ 
   {
      type: "Image", 
      link: "https://...jpeg"
   }
  ]
}
// Jquery to get the data from JSON

$.ajax('https://rest.xyz.com/', {
type: 'GET', 
dataType: 'json',
success: function( data ) {  
  var m = 0;
  for(j in data.rows){
     if ( data.rows[j].media.length >=1 ) { 
       if (data.rows[j].media[0].type == 'Video'){ }
       else {  } 
     }
  }
}