|
Тернарный оператор при выводе 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, время: 21:25. |
|