Данный код выполнятся будет не в браузере а в приложение где он работает великолепно.
К примеру результатом работы такого куска
<body>
<p>какие то данные</p>
<script>
function file_get_contents(url) {
var req = null;
try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {
try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {
try { req = new XMLHttpRequest(); } catch (e) { }
}
}
if (req == null) throw new Error('XMLHttpRequest not supported');
req.open("GET", url, false);
req.send(null);
return req.responseText;
}
var profile = file_get_contents('http://worldoftanks.ru/community/accounts/2515952/api/1.9/?source_token=WG-WoT_Assistant-test');
var api = JSON.parse(profile);
var medalCarius = ("Медаль Кариуса - " + api.data.achievements.medalCarius + '.<br>'); //Медаль Кариуса
document.write(medalCarius);
</script>
</body>
получаем в таком виде. все отлично пашет
Цитата:
|
какие то данные
Медаль Кариуса - 1
|
ну давайте зайдем тогда с этой стороны. создадим массив ручками.
var api = {
"data": {
"achievements": {
"medalCarius": 1,
"medalHalonen": 0,
"medalPascucci": 9,
"invader": 36,
"medalFadin": 0,
"armorPiercer": 1,
"medalEkins": 1,
"mousebane": 1,
"mechanicEngineer": false,
"medalBrunoPietro": 0,
"heroesOfRassenay": 0,
"medalKay": 2,
"evileye": 15,
"tankExperts": {
"usa": true,
"france": false,
"ussr": true,
"china": false,
"uk": true,
"germany": true
},
"defender": 24,
"medalLeClerc": 2,
"supporter": 80,
"medalTamadaYoshio": 0,
"steelwall": 161,
"bombardier": 1,
"medalAbrams": 2,
"medalBrothersInArms": 21,
"maxDiehardSeries": 12,
"medalPoppel": 2,
"medalOrlik": 0,
"maxKillingSeries": 6,
"handOfDeath": 1,
"medalTarczay": 0,
"sinai": 14,
"sniper": 350,
"warrior": 61,
"titleSniper": 1,
"maxInvincibleSeries": 4,
"medalCrucialContribution": 0,
"medalDeLanglade": 0,
"medalWittmann": 4,
"medalBurda": 0,
"maxPiercingSeries": 22,
"scout": 53,
"beasthunter": 10,
"kamikaze": 25,
"medalRadleyWalters": 2,
"raider": 0,
"medalNikolas": 0,
"medalOskin": 0,
"medalBillotte": 3,
"medalLavrinenko": 2,
"medalKolobanov": 0,
"invincible": 0,
"lumberjack": 0,
"medalBoelter": 4,
"tankExpert": 0,
"diehard": 0,
"medalLafayettePool": 0,
"mechanicEngineers": {
"usa": false,
"france": false,
"ussr": false,
"china": false,
"uk": false,
"germany": false
},
"medalLehvaslaiho": 1,
"medalDumitru": 1,
"maxSniperSeries": 60,
"medalKnispel": 1
},
"vehicles": [
{
"spotted": 1617,
"localized_name": "ИС-6",
"name": "Object252",
"level": 8,
"damageDealt": 2029299,
"survivedBattles": 468,
"battle_count": 1333,
"nation": "ussr",
"image_url": "/static/2.3.0/encyclopedia/tankopedia/vehicle/small/ussr-object252.png",
"frags": 1611,
"win_count": 759,
"class": "heavyTank"
},
{
"spotted": 825,
"localized_name": "ИС-3",
"name": "IS-3",
"level": 8,
"damageDealt": 994947,
"survivedBattles": 254,
"battle_count": 810,
"nation": "ussr",
"image_url": "/static/2.3.0/encyclopedia/tankopedia/vehicle/small/ussr-is-3.png",
"frags": 730,
"win_count": 388,
"class": "heavyTank"
}
],
}
};
document.write(JSON.stringify( api ));
тут все понятно. проверили, вывели полученные данные.
и вот надо вывести все данные из vehicles в цикле и создать переменные с именами значений как это сделано в пхп. Ну или хотя бы пример как просто пройтись циклом по массиву и вывести все ключи и значения. С остальным думаю я разберусь.
вот тут то и загвоздка.
for (var a in api.data.vehicles)