2017-08-08 186 views
-3

我有一個來自服務器的JSON對象。如何獲取JSON對象中的鍵

如果我運行

console.log(msg); 

我得到這個從控制檯 screenshot

如何得到鑰匙或對象的所有密鑰? 我試過

console.log(msg.Object.key) 

但抱怨

Property 'Object' does not exist on type '{}'

任何幫助將不勝感激

編輯:

listener.subscribe((msg:any) => { 

     console.log((msg.data[0])); 

這是工作,我有輸出

Object {key: "IL_IMAGER", value: "2.7872460627869"}

但我只想關鍵

我想:

console.log((msg.data[0].key)); 

ERROR TypeError: Cannot read property 'key' of undefined

問題就迎刃而解了。 這是因爲我在服務器中有兩個對象,其中一個沒有'值'。

所以這將是答案:

console.log((msg.data[0].key)); 
+0

'msg.Data [0] .key' - 'msg'是一個Object,它有一個屬性data,它是一個對象數組。 「對象」實際上不是一個屬性,它只是控制檯告訴你可變數據類型。 – tymeJV

+0

屬性'data'在類型'{}'上不存在,我是否應該將Data初始化爲Data:[]? –

+0

如何初始化'msg'? – tymeJV

回答

0

看你的屏幕截圖,你有這樣的

var arr = [{"id":"X","price":"5","size":"5"}, 
 
      {"id":"Y","price":"10","size":"5"}, 
 
      {"id":"X","price":"5","size":"5"}, 
 
      {"id":"Y","price":"10","size":"5"}, 
 
      {"id":"Z","price":"5","size":"5"}, 
 
      {"id":"X","price":"5","size":"5"}, 
 
      {"id":"X","price":"5","size":"5"}, 
 
      {"id":"Z","price":"5","size":"5"}, 
 
      {"id":"Q","price":"11","size":"5"}]; 
 

 
var test = arr.map((data) => { 
 
\t return data.id; 
 
}); 
 
console.log(test);
數據

使用在角這樣

let keys = yourArray.map((item) => { 
    return item.key; 
});