1

だから私はこのJSONを持っています

https://bitcoinpayflow.com/orders{"order":{"bitcoin_address":"1NwKSH1DJHhobCeuwxNqdMjK5oVEZBFWbk"}}

いいえ、bitcoin_addressを参照したい

だから最初に私は最初に文字列を取り除きます

        var stripped = data.substring(33);
        alert(stripped);
                var btc = stripped.orders.bitcoin_address;
        alert(btc); 

最初のアラートは表示されますが、2番目のアラートは受信されません。なぜですか?

4

3 に答える 3

2

strippedまだただの文字列だからです。それを解析してオブジェクトにする必要があります。これを行うには、ネイティブJSON.parseメソッドを使用できます。

var stripped = JSON.parse(data.substring(33));

また、orders存在しないプロパティを参照しています。ですorder

JSON.parse古いブラウザではサポートされていないことに注意してください。このポリフィルを使用して、常に利用可能であることを確認できます。

于 2012-04-26T08:41:29.550 に答える
1

jsonをデコードする最も簡単な方法-文字列-evalを使用する

var bitcoins = eval('(' + json_string + ')');

そしてアクセスbitcoins['order']['bitcoin_address'] しかしそれは少し危険です。上の方法の方が安全です。

于 2012-04-26T08:42:16.180 に答える
1

次のようにJSON.parseを使用します。

$.post('php/whatever.php',{data:dS},function(res){
    var o=JSON.parse(res);
    var bitcoins=o.order.bitcoinaddress;
},"text");
于 2012-04-26T08:51:22.687 に答える