script2.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // Currency drop down
  2. // Сделайте выпадающий список с названиями всех валют, используя код из прошлого задания и накопление HTML-тэгов
  3. // в строковой переменной. Для выпадающих списков в HTML предусмотрены тэги <select> и <option>
  4. currency_drop_down: {
  5. fetch('https://open.er-api.com/v6/latest/USD').then(res => res.json())
  6. .then(data => {
  7. let str = "<select>";
  8. for (let currency of Object.keys(data.rates)) {
  9. str += `<option value='${currency}'>${currency}</option>`;
  10. }
  11. str += "</select>";
  12. document.write(str);
  13. })
  14. }
  15. // Currency table
  16. // Сделайте двумерную таблицу с курсами между всеми возможными парами валют по типу таблицы Пифагора, используя
  17. // заготовку из задания Currency real rate:
  18. // Используйте только один запрос на сервер. Используйте расчет кросскурса для вычисления курса между любой
  19. // парой валют
  20. currency_table: {
  21. fetch('https://open.er-api.com/v6/latest/USD').then(res => res.json())
  22. .then(data => {
  23. let str = "<table>";
  24. str += "<tr><th></th>";
  25. for (let currency of Object.keys(data.rates)) {
  26. str += `<th>${currency}</th>`;
  27. }
  28. str += "</tr>";
  29. for (let rowCurrency of Object.keys(data.rates)) {
  30. str += `<tr><td>${rowCurrency}</td>`;
  31. for (let columnCurrency of Object.keys(data.rates)) {
  32. str += `<td>${+(data.rates[rowCurrency] / data.rates[columnCurrency]).toFixed(2)}</td>`;
  33. }
  34. str += "</tr>";
  35. }
  36. str += "</table>";
  37. document.write(str);
  38. })
  39. }