Problème d'affichage avec for en js

Fermé
Sakura.o - Modifié le 13 sept. 2020 à 01:29
Sakura.o Messages postés 3 Date d'inscription dimanche 13 septembre 2020 Statut Membre Dernière intervention 13 septembre 2020 - 13 sept. 2020 à 21:21
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 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
13 sept. 2020 à 07:52
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 dimanche 13 septembre 2020 Statut Membre Dernière intervention 13 septembre 2020
Modifié le 13 sept. 2020 à 15:20
Bonjour :)

C'est bien rest , je ne utilise pas le res des paramètres de la function
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
13 sept. 2020 à 17:59
Pourtant.. moi je vois du res dans ton code...
0
Sakura.o Messages postés 3 Date d'inscription dimanche 13 septembre 2020 Statut Membre Dernière intervention 13 septembre 2020
13 sept. 2020 à 19:57
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 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
13 sept. 2020 à 20:51
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 dimanche 13 septembre 2020 Statut Membre Dernière intervention 13 septembre 2020
13 sept. 2020 à 21:21
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