JAVASCRIPT : Pourquoi ca marche pas ?
pokento
2022-11-10 10:22:27
Je cherche à obtenir la population de la France :
là ca marchehttps://image.noelshack.com/fichiers/2022/45/4/1668072041-1.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072070-2.png
mais là ca marche pashttps://image.noelshack.com/fichiers/2022/45/4/1668072041-3.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072085-4.png
Pourquoi ? Soyez indulgent je suis en terminale sti
AH_CA_J_AI_INT
2022-11-10 10:23:49
Le 10 novembre 2022 à 10:22:27 :
Je cherche à obtenir la population de la France :
là ca marchehttps://image.noelshack.com/fichiers/2022/45/4/1668072041-1.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072070-2.png
mais là ca marche pashttps://image.noelshack.com/fichiers/2022/45/4/1668072041-3.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072085-4.png
Pourquoi ? Soyez indulgent je suis en terminale sti
T'as une parenthèse fermante au milieu qui sert à rien.
AH_CA_J_AI_INT
2022-11-10 10:25:30
Le 10 novembre 2022 à 10:23:49 :
Le 10 novembre 2022 à 10:22:27 :
Je cherche à obtenir la population de la France :
là ca marchehttps://image.noelshack.com/fichiers/2022/45/4/1668072041-1.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072070-2.png
mais là ca marche pashttps://image.noelshack.com/fichiers/2022/45/4/1668072041-3.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072085-4.png
Pourquoi ? Soyez indulgent je suis en terminale sti
T'as une parenthèse fermante au milieu qui sert à rien.
+ problème de ";" aussi
salad1n
2022-11-10 10:25:46
Tu fais un .then() sur ta fonction getJSON() qui n'est pas asynchrone.
pokento
2022-11-10 10:26:15
Le 10 novembre 2022 à 10:23:49 :
Le 10 novembre 2022 à 10:22:27 :
Je cherche à obtenir la population de la France :
là ca marchehttps://image.noelshack.com/fichiers/2022/45/4/1668072041-1.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072070-2.png
mais là ca marche pashttps://image.noelshack.com/fichiers/2022/45/4/1668072041-3.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072085-4.png
Pourquoi ? Soyez indulgent je suis en terminale sti
T'as une parenthèse fermante au milieu qui sert à rien.
Où ça ? https://pastebin.com/raw/ariQWG7s
J'ai aucune parenthèse en trop
salad1n
2022-11-10 10:26:24
Le 10 novembre 2022 à 10:25:30 :
Le 10 novembre 2022 à 10:23:49 :
Le 10 novembre 2022 à 10:22:27 :
Je cherche à obtenir la population de la France :
là ca marchehttps://image.noelshack.com/fichiers/2022/45/4/1668072041-1.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072070-2.png
mais là ca marche pashttps://image.noelshack.com/fichiers/2022/45/4/1668072041-3.pnghttps://image.noelshack.com/fichiers/2022/45/4/1668072085-4.png
Pourquoi ? Soyez indulgent je suis en terminale sti
T'as une parenthèse fermante au milieu qui sert à rien.
+ problème de ";" aussi
On s'en fout en JS
salad1n
2022-11-10 10:27:07
let population;
async function getJSON (country) {
fetch(`https://restcountries.com/v3.1/name/${country}`).then(response => {
return response.json();
});
};
getJSON('France').then(data => {
population = data[0].population;
});
Ayaaooo95
2022-11-10 10:29:34
https://image.noelshack.com/fichiers/2022/45/4/1668072563-ahi.png
ta fonction getJson doit retourner une promesse.
pokento
2022-11-10 10:30:52
Le 10 novembre 2022 à 10:29:34 :
https://image.noelshack.com/fichiers/2022/45/4/1668072563-ahi.png
ta fonction getJson doit retourner une promesse.
bah elle retourne request.json() qui est une promesse
Le 10 novembre 2022 à 10:27:07 :
let population;
async function getJSON (country) {
fetch(`https://restcountries.com/v3.1/name/${country}`).then(response => {
return response.json();
});
};
getJSON('France').then(data => {
population = data[0].population;
});
Ayaaooo95
2022-11-10 10:33:46
Le 10 novembre 2022 à 10:30:52 :
Le 10 novembre 2022 à 10:29:34 :
https://image.noelshack.com/fichiers/2022/45/4/1668072563-ahi.png
ta fonction getJson doit retourner une promesse.
bah elle retourne response.json() qui est une promesse C'est exactement pareil que dans le 1er exmeple qui fonctionne
Le 10 novembre 2022 à 10:27:07 :
let population;
async function getJSON (country) {
fetch(`https://restcountries.com/v3.1/name/${country}`).then(response => {
return response.json();
});
};
getJSON('France').then(data => {
population = data[0].population;
});
Uncaught (in promise) TypeError: data is undefined
https://jsfiddle.net/3cok2j8z/
salad1n
2022-11-10 10:35:13
async function getJSON (country) {
const response = await fetch(`https://restcountries.com/v3.1/name/${country}`)
const json = await response.json();
return json[0].population
};
const population = await getJSON('France')
console.log(population)
Perso je ferais ca comme ca
Ayaaooo95
2022-11-10 10:38:07
Le 10 novembre 2022 à 10:35:13 :
async function getJSON (country) {
const response = await fetch(`https://restcountries.com/v3.1/name/${country}`)
const json = await response.json();
return json[0].population
};
const population = await getJSON('France')
console.log(population)
Perso je ferais ca comme ca
Oui c'est une possibilité aussi :
https://jsfiddle.net/r108d9nw/
0dose-0test-ban
2022-11-10 10:42:47
T'as pasmis de return dans le getJSON
let population;
const getJSON = function (country) {
return fetch(`https://restcountries.com/v3.1/name/${country}`).then(response => {
return response.json();
});
};
getJSON('France').then(data => {
population = data[0].population;
console.log(population);
});
pokento
2022-11-10 10:45:27
Le 10 novembre 2022 à 10:42:47 :
T'as pasmis de return dans le getJSON
let population;
const getJSON = function (country) {
return fetch(`https://restcountries.com/v3.1/name/${country}`).then(response => {
return response.json();
});
};
getJSON('France').then(data => {
population = data[0].population;
console.log(population);
});
0dose-0test-ban
2022-11-10 10:58:04
le délai est déjà pris en compte hein justement c'est pour ça qu'il y a un then, on rentre dans le then quand le serveur a répondu, c'est sur que ça fonctionne pas avec ton délai tu fais un return dans la fonction timeout.
délai en plus du délai de réponse du serveur
https://jsfiddle.net/0rm29ht7/
ReggaeCat
2022-11-10 11:05:00
Retourne ta promise
pokento
2022-11-10 11:07:40
Le 10 novembre 2022 à 11:05:00 :
Retourne ta promise
oui j'ai vu mais je pensais que fetch retournait déjà une promesse (vu qu'on peut le chainer avec .then) donc pour moi mettre fetch directement ca voulait dire que la fonction retournait une promesse