循环通过JSON响应对象

时间:2017-12-12 03:36:43

标签: jquery json

我从下面的API获得了回复。如何使用jQuery循环访问结果以访问'appName'的值?例如?

var apps = 
{ 
  358899126: 
   { appId: 358899126,
     appName: 'Tagged -Chill, Chat & Go Live!',
     primaryCategoryName: 'Social Networking' },
  359917414: 
   { appId: 359917414,
     appName: 'Solitaire',
     primaryCategoryName: 'Games' } 
}

3 个答案:

答案 0 :(得分:2)

您可以使用Object.keys获取每个对象的键,然后使用方括号语法来获取实际对象,如下所示:

var apps = 
{ 
  358899126: 
   { appId: 358899126,
     appName: 'Tagged -Chill, Chat & Go Live!',
     primaryCategoryName: 'Social Networking' },
  359917414: 
   { appId: 359917414,
     appName: 'Solitaire',
     primaryCategoryName: 'Games' } 
}

Object.keys(apps).forEach((key) => {
  let obj = apps[key];
  console.log(obj.appName);
});

答案 1 :(得分:1)

您需要使用Object.keys将对象的所有索引作为数组,然后循环遍历它们。试试这个。

var apps = 
{ 
  358899126: 
   { appId: 358899126,
     appName: 'Tagged -Chill, Chat & Go Live!',
     primaryCategoryName: 'Social Networking' },
  359917414: 
   { appId: 359917414,
     appName: 'Solitaire',
     primaryCategoryName: 'Games' } 
}
let k = Object.keys(apps);
for(var s = 0 ; s < k.length ; s++)
{
    console.log(apps[k[s]]['appName'];
}

答案 2 :(得分:1)

您可以使用解决方案

&#13;
&#13;
var apps = 
{ 
  358899126: 
   { appId: 358899126,
     appName: 'Tagged -Chill, Chat & Go Live!',
     primaryCategoryName: 'Social Networking' },
  359917414: 
   { appId: 359917414,
     appName: 'Solitaire',
     primaryCategoryName: 'Games' } 
}

for(var k in apps){
  console.log(apps[k].appName);
}
&#13;
&#13;
&#13;

循环将遍历键,使用点运算符访问appName或以其他方式console.log(apps[k]["appName"]);完成。

希望这会对你有所帮助。