2014-11-02 56 views
-2

所以我需要得到散列prev_out地址和值,還有out地址。
但我有一些問題,我能夠得到散列,但沒有任何其他的子值。獲取JSON值

{ 
"op": "utx", 
"x": { 
    "hash": "f6c51463ea867ce58588fec2a77e9056046657b984fd28b1482912cdadd16374", 
    "ver": 1, 
    "vin_sz": 4, 
    "vout_sz": 2, 
    "lock_time": "Unavailable", 
    "size": 796, 
    "relayed_by": "209.15.238.250", 
    "tx_index": 3187820, 
    "time": 1331300839, 
    "inputs": [ 
     { 
      "prev_out": { 
       "value": 10000000, 
       "type": 0, 
       "addr": "12JSirdrJnQ8QWUaGZGiBPBYD19LxSPXho" 
      } 
     } 
    ], 
    "out": [ 
     { 
      "value": 2800000000, 
      "type": 0, 
      "addr": "1FzzMfNt46cBeS41r6WHDH1iqxSyzmxChw" 
     } 
    ] 
} 

我該如何去得到這些?

+3

你懶作爲顧名思義寫清楚! :v – 2014-11-02 06:19:13

回答

0

爲(假設你的JSON包裹在json對象)這是非常簡單的:

var hash  = json.x.hash; 
var prev_out = json.x.inputs[0].prev_out.addr; 
var out  = json.x.out[0].addr 

有什麼問題?您正在使用javascript對不對?如果您使用的其他語言如Scala或任何其他語言,這是有道理的。

1

假設var是包含此對象的變量獲得prev_out地址:

var.x.inputs[0].prev_out.addr 

要獲取out地址:

var.x.out[0].addr 

您使用.property訪問對象的屬性, [index]來訪問一個數組元素。對象被{}包圍,數組被[]包圍。

0

假設您的JSON是存儲在json對象,然後:

for(key in json.x.inputs){ 
    for(key1 in json.x.inputs[key].prev_out){ 
     console.log('key1:',key1); 
     console.log('value:',json.x.inputs[key].prev_out[key1]); 
    } 
}