Json и видимость в других функциях js
Пытаюсь вытянуть данные из json запроса. Но за пределами функции не видит переменную.
$(document).ready(function(){
var btc;
getRate();
console.log(btc);
});
function getRate(){
btc = $.get(
"https://api.cryptonator.com/api/ticker/btc-rub",
function(data){
console.log(data);
btc = Math.floor(data.ticker.price);
//console.log(btc);
}
);
}
Json данные
{"ticker":{"base":"BTC","target":"RUR","price":"2257594.54489560","volume":"246.82852908","change":"-12430.04940330","markets":[{"market":"Binance","price":"2277288.00000000","volume":99.10411},{"market":"Cex.io","price":"2307363.90000000","volume":7.37840741},{"market":"Exmo","price":"2243140.00000000","volume":115.85872393},{"market":"Kuna","price":"2297929.98000000","volume":3.546166},{"market":"YoBit","price":"2220000.00000000","volume":20.94112174}]},"timestamp":1609774803,"success":true,"error":""}
надо переменной btc присвоить данные из запроса поля price что бы переменную btc можно было использовать в любом месте кода.
Ответы (1 шт):
Автор решения: dmitriy_vlz
→ Ссылка
Немного переписал, но результат дает.
$(document).ready( async function(){
let btc = await getRate();
console.log('Price:' + btc);
});
async function getRate(){
let res = await fetch("https://api.cryptonator.com/api/ticker/btc-rub");
let resJSON = await res.json()
return Math.floor(resJSON.ticker.price)
}