Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Не могу распарсить JSON из-за цифр (https://javascript.ru/forum/jquery/48816-ne-mogu-rasparsit-json-iz-za-cifr.html)

casper-man 17.07.2014 20:03

Не могу распарсить JSON из-за цифр
 
От слов к примеру:
function getInfo() {
    $.ajax({
        url: "https://api.worldofwarplanes.ru/wowp/account/info/?application_id=demo&fields=statistics.battles,statistics.wins,nickname&account_id=2001499",
        type: "GET",
        DataType: "jsonp", 
        success: function (data) {
         parseresults(data);          
        }
      
    });
}
function parseresults(data) {
  var sta = data.status;
  var nic = data.data.2001499.nickname;
  var btl = data.data.2001499.statistics.battles;
  var win = data.data.2001499.statistics.wins;
alert("Статус: "+sta+"; Ник:"+nic+"; Боёв:"+btl+"; Побед:"+win);
  }
$(document).ready(function () {
    getInfo();
});

так вот... это не работает... а вот это работает:
function getInfo() {
    $.ajax({
        url: "https://api.worldofwarplanes.ru/wowp/account/info/?application_id=demo&fields=statistics.battles,statistics.wins,nickname&account_id=2001499",
        type: "GET",
        DataType: "jsonp",
        success: function (data) {
            parseresults(data);
        }

    });
}

function parseresults(data) {
    var sta = data.status;
    alert("Статус: " + sta);
}
$(document).ready(function () {
    getInfo();
});

как видно разница в них та, что в переменных в появляется цифры. и от них ни куда не уйти... И как я понял именно они и мешают, к тому же эти цифры ID аккаунт который в идеале должен быть в переменной... и в идеале выглядеть должно приблизительно так:
var acc_id = "2001499";
function getInfo() {
    $.ajax({
        url: "https://api.worldofwarplanes.ru/wowp/account/info/?application_id=demo&fields=statistics.battles,statistics.wins,nickname&account_id="+acc_id,
        type: "GET",
        DataType: "jsonp", 
        success: function (data) {
         parseresults(data);          
        }
      
    });
}
function parseresults(data) {
  var sta = data.status;
  var nic = data.data.acc_id.nickname;
  var btl = data.data.acc_id.statistics.battles;
  var win = data.data.acc_id.statistics.wins;
alert("Статус: "+sta+"; Ник:"+nic+"; Боёв:"+btl+"; Побед:"+win);
  }
$(document).ready(function () {
    getInfo();
});

Одним словом мозг кипит, а результата null)))

Sweet 17.07.2014 20:11

var nic = data.data[acc_id].nickname;
var btl = data.data[acc_id].statistics.battles;
var win = data.data[acc_id].statistics.wins;

casper-man 17.07.2014 20:41

спасибо за оперативную помощь!!!


Часовой пояс GMT +3, время: 17:35.