2013-03-19 72 views
-2

我有以下的外部JSON文件,但在更大的尺寸看起來像這樣:JSON到2d JavaScript數組

[{"time":1610.5,"Irradiance":1360.6718} 
,{"time":1611.5,"Irradiance":1360.6549} 
,{"time":1612.5,"Irradiance":1361.0528}] 

我想有這些轉換爲JavaScript數組,看起來像一個功能這個:

[[1610.5, 1360.6718], 
[1611.5, 1360.6549], 
[1612.5, 1361.0528]] 

我也想能夠提取關鍵名稱「時間」和「輻照度」。

+0

我是新來的這一點,並沒有完全得到如何循環並提取數值並創建一個新的數組陣列 – user2187268 2013-03-19 16:04:36

回答

0

試試這個:

var js=[{"time":1610.5,"Irradiance":1360.6718},{"time":1611.5,"Irradiance":1360.6549} 
,{"time":1612.5,"Irradiance":1361.0528}]; 
var newarr=Array(); 
for(var i=0;i<js.length;i++) 
{ 
    arr=new Array(js[i].time,js[i].Irradiance); 
    newarr.push(arr);   
} 
console.log(newarr); 

小提琴http://jsfiddle.net/kfaWx/

+0

真棒這是我一直試圖得到,但無法弄清楚謝謝 – user2187268 2013-03-19 16:11:20

1

假設你的數組被命名爲data

converted = data.map(function(x) { return [x.time, x.Irradiance]; }); 

編輯提取密鑰需要假設數組中的對象是同質的。

var keys = []; 
for (var k in data[0]) { keys.push(k); } 

現在陣列keys將包含被在data[0]發現密鑰;即,['time', 'Irradiance']。請注意,如果您environment supports it,你也可以這樣做:

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

cool可以工作,現在我怎麼能提取出鍵值名稱,假設這些鍵名是用各種數據集更改的 – user2187268 2013-03-19 16:08:07

+0

@ user2187268請參閱編輯 – Xophmeister 2013-03-19 16:18:42

+0

謝謝Xophmeister – user2187268 2013-03-19 17:57:33