|
Тернарный оператор при выводе API данных
Сайт получает данные крипто рынка через API. Нужно сделать так, что изменение курса в % (число) в ячейке таблицы было зеленого цвета, если он положительный и красный, если отрицательный
![]() Также надо заменить на прочерк (-) данные, если они отсутствуют (равны Null). ![]() По идее тут надо через тернарный оператор, но не могу понять, куда и как его прописывать. Еще есть вопрос, почему подчеркивается красным вот такая запись. Ему не нравится, что получаемый через API параметр начинается с числа ![]() ![]() |
DVV,
код можно а не картинку, где строка 12? |
(function() { function exchangeDataShow() { fetch('https://api.coinmarketcap.com/v1/ticker/?limit=20') .then( (responce) => { return responce.json(); }) .then( (data) => { let output = ' '; data.forEach(coin => { output += ` <tr> <td>${coin.rank}</td> <td>${coin.name}</td> <td>${coin.price_usd}</td> <td>${coin.24h_volume_usd}</td> <td>${coin.market_cap_usd}</td> <td>${coin.total_supply}</td> <td>${coin.max_supply}</td> <td>${coin.percent_change_1h}%</td> <td>${coin.percent_change_24h}%</td> <td>${coin.percent_change_7d}%</td> </tr> `; }); document.getElementById('market-data').innerHTML = output; }) .catch( (err) => { console.log(err); }); } window.onload = exchangeDataShow(); setInterval(() => { console.log('reload'); exchangeDataShow(); }, 5000); })(); |
${coin['24h_volume_usd']}
А для цвета условие меньше нуля то иначе ... |
DVV,
css сами пропишите. (function() { function exchangeDataShow() { fetch('https://api.coinmarketcap.com/v1/ticker/?limit=20') .then( (responce) => { return responce.json(); }) .then( (data) => { let output = ' '; data.forEach(coin => { let cls = coin.percent_change_1h < 0 ? 'red' : 'green'; output += ` <tr> <td>${coin.rank}</td> <td>${coin.name}</td> <td>${coin.price_usd}</td> <td>${coin['24h_volume_usd']}</td> <td>${coin.market_cap_usd}</td> <td>${coin.total_supply}</td> <td>${coin.max_supply}</td> <td class="${cls}">${coin.percent_change_1h}%</td> <td>${coin.percent_change_24h}%</td> <td>${coin.percent_change_7d}%</td> </tr> `; }); document.getElementById('market-data').innerHTML = output; }) .catch( (err) => { console.log(err); }); } window.onload = exchangeDataShow(); setInterval(() => { console.log('reload'); exchangeDataShow(); }, 5000); })(); |
Спасибо большое. Заработало))
|
рони,
исправить надо, coin.24h_volume_usd - это ошибка. |
Супер. Вот понимаю, что надо прописать тернарный оператор, но так и не дошло, куда именно. Спасибо за помощь))
|
laimas,
добавил |
Цитата:
|
Часовой пояс GMT +3, время: 14:52. |
|