2017-04-22 1 views
0

서버에서 JSON 데이터를 가져 오려고합니다. 데이터를 반환하는 요청을 성공하지만 컬렉션 키에 액세스 할 수 없습니다. 나는 전체 객체를 인쇄했고, 키가 존재하지만 그것을 얻는 방법을 모른다. "-Ki0NyOnNuPFbtkUSIgs" 같은 키 값을 얻고 싶습니다. 여기 콘솔 출력과 코드, 도움이 필요하십니까 ??angular2 json id 키를 얻는 방법?

Object printed in the consoleHere my code

+2

는'데이터 [ "Ki0NyOnNuPFbtkUSIgs을"] 시도해 봤어 이미지 – Aravind

+1

로 포스트에 코드를 추가하지? –

+0

이 값 "-Ki0NyOnNuPFbtkUSIgs"를 얻고 싶지 않습니다. [ "- Ki0NyOnNuPFbtkUSIgs"] –

답변

0

개체에 키가 하나만 있으므로 사용할 수 있습니다. Object.keys(row)[0]

`-

let data = [ 
 
    {"Ki0NyOnNuPFbtkUSIgs": {date: '', desc: ''}}, 
 
    {"Ki0NyOnNuPFbtkUS123": {date: '', desc: ''}}, 
 
    {"Ki0NyOnNuPFbtkUS456": {date: '', desc: ''}} 
 
    ] 
 
    
 
    
 
    for(i = 0; i < data.length; i++) { 
 
    \t let row = data[i];  
 
    \t console.log(Object.keys(row)[0]); 
 
    }

+0

이것은 고맙습니다. –

0

사용 for.in처럼 개체의 키 값에 액세스 :

그냥 console.log(variable_name['-Ki0NyOnNuPFbtkUSIgs'])

을 단순히 지정된 키의 값을 인쇄하려면
var test = {jfhajsk: 'sdgfdg', '-ksdakahcsak': 'asfdwf', 1: 34, 3: 'dsgfg'} 
for(var i in test) { 
    console.log(i);//Will print jfhajsk, -ksdakahcsak, 1 and 3 
    console.log(test[i]);//Will print sdgfdg, asfdwf, 3 and dsgfg 
} 

+0

'loadAllPackages는() { this.http 갔지 ('https://sofiane-5a3d8.firebaseio.com/forum.json ') .MAP ((입술 : 임의) => { 복귀 res.json();} ) .subscribe ( (데이터 : 임의) => { this.packageData.next (데이터) CONSOLE.LOG (데이터) } (ERR : 임의) => console.error ("loadAllPackages : ERROR"), () => console.log ("loadAllPackages : always") ); }' –

+0

데이터를 가져와 구독해야하기 때문에 내 경우에는이 작업을 수행 할 수 없습니다. –

+0

나는 그것을 단순화 할 것입니다. 열쇠가 무엇인지 알지 못하면이 json에서 키를 검색 할 수 없습니다. 모든 휴식은 질책 일이 될 것입니다. – gaganshera