2013-06-24 3 views
-1

В настоящее время я работаю над проектом в Javascript. У меня есть массив объектов String, которые я бы хотел пропустить. Однако я не могу понять, как получить доступ к ключу каждого свойства объектов.Доступ к ключам в массиве объектов в Javascript

Например:

var jsonDoc = [ 
    { 
     "Subject": "XXXXXXX", 
     "Submitter": "X", 
     "Dx": "Affected", 
     "Sample Set": "Arab", 
     "Sex": "F", 
      "Pedigree": "0" 
    }, 
    { 
      "Subject": "XXXXXXX", 
      "Submitter": "X", 
      "Dx": "Affected", 
      "Sample Set": "North American", 
      "Sex": "F", 
      "Pedigree": "0" 
    } 
] 

for(var i = 0; i<jsonDoc.length; i++){ 
    for(var key in jsonDoc[i]){ 
     document.write(jsonDoc[i][key]+"<br />"); 
    } 
    document.write("--- <br />"); 
} 

Однако это только печатает значения, а не ключи:

XXXXXXX 
X 
Affected 
Arab 
F 
0 
--- 
XXXXXXX 
X 
Affected 
North American 
F 
0 
--- 

Как я могу получить доступ к Subject, передающим, и т.д. итеративным способом?

+0

Просто напечатать переменная с именем _key_ (которую вы объявили сами) ... – jahroy

+3

'for (ключ var в jsonDoc [i]) {console.log (ключ);}' – tymeJV

ответ

5

у вас уже есть ключ в значении переменной key во внутреннем контуре для

просто изменить код

for(var i = 0; i<jsonDoc.length; i++){ 
    for(var key in jsonDoc[i]){ 
     document.write(key + ': '+ jsonDoc[i][key]+"<br />"); 
    } 
    document.write("--- <br />"); 
} 

и вы увидите :)

+0

Phsew. Как легко. Привет, спасибо! – user2494584

+0

@ user2494584 - Это невозможно, если вы понимаете свой собственный код, когда пишете его. – jahroy