2017-04-18 86 views
-1

我想从数组中获取值。我正在使用JavaScript。 我的阵列是从javascript中的关联数组获取值

[{"username1" : "123456"},{"username2" : "121"}] 

我想获得用户名1的值。我想用username1打印123456。怎么可能?请帮帮我?我的代码如下所示。

var categories = []; 

    categories.push({"username1" : "123456"}); 

for (var i = 0; i < categories.length; i++) { 
for (var categoryid in categories[i]) { 
    var category = categories[i][categoryid]; 
    // log progress to the console 
    console.log(categoryid + " : " + category); 

} 

它显示打印数组中的所有值和对象。

+2

可能[Access/process(嵌套)对象,数组或JSON]的副本(http://stackoverflow.com/questions/11922383/access-proc ess-nested-objects-arrays-or-json) – Teemu

+0

@Teemu我想知道为什么这是一个骗局。 OP知道如何访问他们:) –

+0

@ANS他们..?在这个问题中的答案回答了所有的访问问题,包括已知/未知长度的迭代等...使用var result = myArr.username1时的 – Teemu

回答

1

这不是一个“关联数组” - 它是对象的一维数组。

关联数组看起来像

var myArr = {"username1" : "123456","username2" : "121"}; 

,你会等使用

var result = myArr.username1; 
//or 
var result = myArr["username1"]; 

你的价值要使用您发布的例子访问你的价值,你会用

var result = myArr.filter(x => x.username1)[0].username1; 
+0

;或var result = myArr.username1 ;.它显示未定义。 – Fazil

+0

@Fazil我不认为你正确阅读我的答案 – Jamiec

+0

这是我的数组[{“username1”:“123456”},{“username2”:“121”}]。或者如何将值推到这个数组中{“username1”:“123456,”username2“:”121“}。 – Fazil