Javascript 数组中的迭代哈希

Javascript 数组中的迭代哈希,javascript,jquery,Javascript,Jquery,我如何迭代这个过程并使用结构中的值 "[{\"username\":\"aw\"},{\"username\":\"api\"},{\"companyname\":\"dd\",\"username\":\"dd\"},{\"companyName\":\"Testing\"}]" 我只想得到用户名,这是一个使用mongodb设计的数据库调用产品。试试这个 arr = JSON.Parse(yourString).map(function(item){ return item.use

我如何迭代这个过程并使用结构中的值

"[{\"username\":\"aw\"},{\"username\":\"api\"},{\"companyname\":\"dd\",\"username\":\"dd\"},{\"companyName\":\"Testing\"}]"
我只想得到
用户名
,这是一个使用mongodb设计的数据库调用产品。

试试这个

arr = JSON.Parse(yourString).map(function(item){
     return item.username;
});
这是JSON

为了拥有一个javascript对象,需要对其进行解析

然后可以在数组上迭代:

var obj = JSON.parse("[{\"username\":\"aw\"},{\"username\":\"api\"},{\"companyname\":\"dd\",\"username\":\"dd\"},{\"companyName\":\"Testing\"}]");

for (int i = 0; i < obj.length; i++)
{
    console.log(obj[i].username);
}
var obj=JSON.parse(“[{\'username\':\'aw\',{\'username\':\'api\',{\'companyname\':\'dd\',\'username\':\'dd\',{\'companyname\':\'Testing\'”);
for(int i=0;i
首先必须将其转换为JavaScript数组。在jQuery中,您可以使用方法来完成。代码如下所示:

var results = $.parseJSON(resultsFromMongoDB);
for (var i in results) {
    if (results[i]['username'] != undefined) {
        var username = results[i]['username']
        // Some code...
    }
}

[编辑]问题已更改:

这里不需要JSON,它是一个数组,您可以解析它并使用
filter
和/或
map
方法:

var usernames = JSON.parse(yourResultStringFromMongoDb)
   .filter(function(a){return a.username;})
   .map(function(a){return a.username});
//=> ["aw", "api", "dd"]

编辑:。@Samuele此编辑更改了问题的性质。它是一个字符串,你制作了一个js对象……它一点也不像字符串,更像是粘贴在这里的乱码。这就是为什么我在beginning@KooilincOP没有改变这个问题。Samuele在编辑中更改了它,因为他认为字符串只是一个混乱的格式(无法知道他是否正确)。