Problème d'affichage avec for en js

Sakura.o -  
Sakura.o Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je débute depuis pas très longtemps le javascript , et je fait l'exercice de Pokémon avec les Api etc... et je pense que c'est ma boucle for où j'ai le problème mais le soucis il me faut absolument la boucle pour que je recupere les attaques du pokemon ! Voici mon résultat dans le cmder :

ID : 1
Nom : bulbasaur
Taille : 7
Poids : 69
Attaques : pound
Attaques : pound,double-slap
Attaques : pound,double-slap,pay-day
Attaques : pound,double-slap,pay-day,comet-punch
Attaques : pound,double-slap,pay-day,comet-punch,cut
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind,guillotine
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind,guillotine,mega-punch
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind,guillotine,mega-punch,whirlwind
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind,guillotine,mega-punch,whirlwind,bind
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind,guillotine,mega-punch,whirlwind,bind,swords-dance
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind,guillotine,mega-punch,whirlwind,bind,swords-dance,vice-grip


Et j'aimerais que ça m'affiche comme ça :



ID : 1
Nom : bulbasaur
Taille : 7
Poids : 69
Attaques : pound,double-slap,pay-day,comet-punch,cut,scratch,razor-wind,guillotine,mega-punch,whirlwind,bind,swords-dance,vice-grip

// Avec tout les attacks en une seule fois




Et voici mon code js :




var request = require('request');
function catchPokemon(result) {

request.get("https://pokeapi.co/api/v2/pokemon/" + result, function (err, res, body) {
var json = JSON.parse(body);
var stocks = [];
console.log('ID : ' + json.id)
console.log('Nom : ' + json.name)
console.log('Taille : ' + json.height)
console.log('Poids : ' + json.weight)


request.get('https://pokeapi.co/api/v2/move/', function (err, res, body) {

var json2 = JSON.parse(body)
var rest = json2.results;
//console.log(res) // nom des attack

for (var i = 0; i < rest.length; i++) {

request.get(rest[i].url, function (err, res, body) {

var json3 = JSON.parse(body)
var res2 = json3.type;


if (res2.url === ("https://pokeapi.co/api/v2/type/" + result + "/")) {




var arr = json3.name;
stocks.push(arr);
console.log("Attaques : " + stocks);

return;


}

})

}

})
})
} catchPokemon(1);





Je vous remercie d'avance pour votre aide :)
A voir également:

4 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour

res ou rest ... Tu as mis un t sur une de tes variables...puis il disparaît quand tu l'utilises ...??
0
Sakura.o Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour :)

C'est bien rest , je ne utilise pas le res des paramètres de la function
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Pourtant.. moi je vois du res dans ton code...
0
Sakura.o Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
les rest , je l'appelle via à cette variable " var rest = json2.results;" ( .results de la requete , pas celui de la function ) , les seuls res c'est dans les paramètres des function , sinon il y a aussi res2 qui n'est pas res !
( désolé, j'aurais due mieux les nommés )
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Ok j'ai mal vu vu que tu n'as pas utiliser correctement les balises de code pour poster ton code...
(A lire pour tes prochains messages :. https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code )

Bref,
Ajoute des console.log afin d'afficher le contenu de tes variables avant tes boucles et montre-nous à quoi ça ressemble'.
0
Sakura.o Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour l'info.

console.log de rest c'est ça



le consol.log de json2 c'est ça :




et le console.log de json qui donne un résultat assez long :


0