-1

Не могу понять, почему если через console.log, то вижу данные, а если через return то ничего не приходит. Помогите разобраться.

function ItemsPriceList() {
request(`http://api.csgo.steamlytics.xyz/v1/items/popular?key=14a71e5341037ffa4ea94067189e9db7`, (error, response, body) => {
return body
})
}
ItemsPriceList()

2 Answers2

1

Ваша функция корректно возвращает body, вы просто ничего с ним не делаете.
Также, не совсем понятно, в каком формате вы хотите получить эти данные.
Отобразить на html странице или обработать их в будущем, например, специфичный поиск и последующий вывод?
Если банально вывести на экран, то посмотрите эти output js команды https://www.w3schools.com/js/js_output.asp

0

В данном случае,return возвращает значение из коллбэка, передаваемого параметром в функцию request, а вовсе не из функции ItemsPriceList.
Сама функция ItemsPriceList возвращает undefined просто потому, что в ней оператор return не используется.

Так как обратный вызов в request выполняется асинхронно - возвращать body необходимо так же асинхронно: либо передавая параметром во внешнюю callback-функцию, либо возвращая из ItemsPriceList() экземпляр Promise (с передачей body параметром в resolve).

yar85
  • 10,940