我有一个在它的参数中传递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,以便最后的ign首先显示而不是第一个,这是在JSON中。那么如何重新订购json呢?无法从之前提出的问题中找到答案,而且我一直得到.reverse()或.sort()对某个对象不起作用。
答案 0 :(得分:5)
您可能已尝试.reverse()
整个对象。由于您正在遍历数组this.list.payload
,所以改为反转该数组:
$.each(this.list.payload.reverse(), function(i, donor) {