2017-04-18 84 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