1

パラメータでJSONを渡す関数があります...

{
   "code":0,
   "payload":[
      {
         "time":1349661897,
         "packages":[
            "49381"
         ],
         "ign":"PurpleArrow",
         "price":"15.99",
         "currency":"USD"
      }
}

app.js:

var Donors = function(api) {

   this.list = api;

   $.each(this.list.payload, function(i, donor) {
     var ign = donor.ign,
       price = donor.price,
       currency = donor.currency;

     if(price !== "-") $('#donors').append('<li>' + ign + ' donated ' + price + currency + '</li>');
   });
}

そしてindex.phpで:

var donors = new Donors(<?php cbProxy(); ?>);

念のため、PHP 関数は json を取得するだけです。

function cbProxy(){
  $api = 'http://api.buycraft.net/v3?secret=MYSECRETKEY&action=payments';
  $url =  urldecode($api);
  $url = 'http://' . str_replace('http://', '', $url); 
  echo file_get_contents($url);

}

JSONを元に戻す方法を見つけようとしています。これにより、ここのJSONにある最初のサインではなく、最後のサインが最初に表示されます。では、どうすればjsonを並べ替えることができますか? 以前の質問からの回答が見つからず、オブジェクトに対して .reverse() または .sort() が機能しないというメッセージが表示され続けました。

4

1 に答える 1

5

.reverse()オブジェクト全体を試した可能性があります。array を反復処理しているためthis.list.payload、代わりにその配列を逆にします。

$.each(this.list.payload.reverse(), function(i, donor) {
于 2012-12-22T04:02:55.397 に答える