2016-02-19 35 views
1

我是從如下提取數據 - 在下面的格式JSON/JavaScript的獲取對象鍵

以上函數返回的數據 -

[Object { date=Date, value=112, volume=1469}, Object { date=Date, value=124, volume=539}, Object { date=Date, value=114, volume=859}, Object { date=Date, value=123, volume=1284}, Object { date=Date, value=113, volume=1382}, Object { date=Date, value=129, volume=1353}] 

我想獲得密鑰的列表僅作爲一個簡單的數組。(解析所述第一對象的陣列中是足以讓這與所有其他對象具有相同的鍵)在上述輸出的情況下,我想簡單陣列看作["date","value","volume"]

我試圖JSON.stringify &然後解析,但它仍然無法正常工作。

另外,我怎樣才能將從圖表中獲得的整個數組轉換爲一個簡單的數組?

我形象化以下類型的輸出 -

[{'date':'whatever', 'value':126, 'volume':911}, 
{'date':'whatever', 'value':136, 'volume':1005}, 
{'date':'whatever', 'value':125, 'volume':720}] 

如果這個問題沒有意義,請讓我知道。我會看到我可以重新說出最好的。

+0

你如何得到字符串,我的意思是數據? – RRK

+0

你在那裏有沒有有效的JavaScript或JSON。顯示如何從圖表中提取數據可能有助於某人回答。 – Paulpro

+0

如果它是一個數組,那麼只需使用['data [0] .keys()'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys)那麼你會得到一些鍵。 – RRK

回答

5

使用Object.keys()功能。在函數的響應中,您可以獲得一個數組。用它來獲取密鑰列表。

var data = getChartData('param') 
Object.keys(data[0]); 
+0

謝謝Rejith。我這樣做 - 'var chartData = getChartData(「chartdiv」); var keysOnly = chartData [0] .keys(); console.log(keysOnly);'我得到錯誤 - 'TypeError:chartData [0] .keys不是函數'。聽起來像我失蹤,包括一個圖書館? – usert4jju7

+2

它是'Object.keys'而不是'Object.prototype.keys'。這需要被稱爲'Object.keys(data [0]);'。 'data [0] .keys()'只會拋出一個錯誤,因爲data [0] .keys'是undefined |。 – Paulpro

+0

很酷。謝謝Paul&Rejith。真棒的東西。謝謝你。 – usert4jju7