2017-02-23 62 views
0

这是我的json对象。我只需要获取packageName的所有值并将其分配给一个数组。任何人都可以帮助我。我不能去使用索引,因为这是动态对象。
在此先感谢。从javascript中的JSON对象访问动态值

var data = [ 
    { 
     "packageName":"string", 
     "packageValue":"string" 
    }, 
    { 
     "packageName":"string", 
     "packageValue":"string" 
    } 
] 

回答

1

使用JavaScript map功能

var packageNames = data.map(function(obj){ 
    return obj.packageName; 
}) 

var data=[ 
 
    { 
 
     "packageName":"string1", 
 
     "packageValue":"string" 
 
    }, 
 
    { 
 
     "packageName":"string2", 
 
     "packageValue":"string" 
 
    } 
 
] 
 

 
var packageNames = data.map(function(obj){ 
 
return obj.packageName; 
 
}) 
 

 
console.log(packageNames)

+0

非常感谢你为我工作。 –

+0

@swaroop请务必检查正确的答案 –

+0

对不起新用户。感谢您的帮助 –

0

您可以使用过滤功能,并添加到阵列只有当此项存在。

var arr = []; 

data.filter(getValue) 

function getValue(data){ 
if(data[packageName]){ 
    arr.push(data[packageName]) 
    } 
} 
0

您可以添加if语句来检查密钥,然后将其推送到数组。

for(var i = 0; i< data.length; i++){ 
    for (var property in data[i]) { 
     if (data[i].hasOwnProperty(property)) { 
      console.log(property); 
      console.log(data[i][property]); 
     } 
    } 
}