js.js 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. // 1. Literals +
  2. // Найдите несколько окружающих объектов реального мира и создайте соответственные объекты Javascript. Например:
  3. /*{
  4. const dog = {
  5. name : "leo",
  6. color : "orange",
  7. breed : "spitz",
  8. }
  9. }*/
  10. // 2. Literals expand +
  11. // Дайте возможность пользователю добавить любые два свойства в эти объекты с любыми значениями. Обеспечьте ввод названия
  12. // ключа и значения через prompt прямо в литерале объекта {}
  13. /*{
  14. const car = {
  15. brand : "Toyota",
  16. }
  17. car[prompt("Введите ключ")] = prompt('Введите значение для ключа');
  18. car[prompt("Введите ключ")] = prompt('Введите значение для ключа');
  19. console.log(car)
  20. }*/
  21. //3. Literals copy +
  22. // Пусть пользователь введет еще одно свойство в переменную. Вставьте в новый объект эту переменную.
  23. // Скопируйте объект из предыдущего задания в новый объект.
  24. /*{
  25. const car = {
  26. brand : "Toyota",
  27. model : "Camry",
  28. year : "2022"
  29. }
  30. const newCar = {...car}
  31. newCar[prompt("Введите ключ")] = prompt('Введите значение для ключа');
  32. console.log(newCar)
  33. }*/
  34. //4. Html tree продолжение в конспекте
  35. //
  36. // <body>
  37. // <div>
  38. // <span>Enter a data please:</span><br/>
  39. // <input type='text' id='name'>
  40. // <input type='text' id='surname'>
  41. // </div>
  42. // <div>
  43. // <button id='ok'>OK</button>
  44. // <button id='cancel'>Cancel</button>
  45. // </div>
  46. // </body>
  47. //
  48. // 5. Parent
  49. // Добавьте каждому объекту тэга из предыдущего задания связь с родителем, используя свойство parent и присвоение
  50. // 6. Change OK
  51. // Добавьте(или измените) любой введенный пользователем атрибут тэга <button id='ok'> из задания HTML Tree. Пользователь также вводит значение этого атрибута.
  52. //7. Destructure
  53. // Используя деструктуризацию структуры из задания HTML Tree, Выведите значения текста в тэге span,
  54. // Выведите значения текста во второй кнопке и Выведите значение атрибута id во втором input.
  55. // 8. Destruct array +
  56. // напишите код, который используя деструктуризацию положит:
  57. // четные числа в переменные even1, even2; нечетные в odd1, odd2, odd3; буквы в отдельный массив
  58. /*{
  59. let arr = [1,2,3,4,5,"a","b","c"];
  60. [odd1, even1, odd2, even2, odd3, ...letters] = arr;
  61. } */
  62. // 9. Destruct string +
  63. //// напишите код, который используя деструктуризацию положит: число в переменную number; букву a в переменную s1;
  64. // букву b в переменную s2; букву c в переменную s3
  65. /*{
  66. let arr = [1, "abc"];
  67. [number, [s1, s2, s3]] = arr;
  68. } */
  69. //10. Destruct 2 +
  70. //извлеките используя деструктуризацию имена детей в переменные name1 и name2
  71. /*{
  72. let obj = { name: 'Ivan',
  73. surname: 'Petrov',
  74. children: [
  75. {name: 'Maria'},
  76. {name: 'Nikolay'}]};
  77. const [name1,name2] = obj.children;
  78. console.log(name1, name2)
  79. } */
  80. // 11. Destruct 3 +
  81. // извлеките используя деструктуризацию объектов два первых элемента и длину массива в переменные a, b и length
  82. /*{
  83. const arr = [1,2,3,4,5,6,7,10];
  84. const {0:a, 1:b, length} = arr;
  85. }*/
  86. // 12. Copy delete
  87. // Сделайте копию одного из объектов из задания Literals без ключа, который введет пользователь.
  88. {
  89. const dog = {
  90. name: "leo",
  91. color: "orange",
  92. breed: "spitz",
  93. }
  94. }
  95. // 13.Currency real rate
  96. // Ниже приведен код, который скачивает актуальную информацию о курсах валют. Скопируйте ссылку из него вставьте в браузер интереса ради. Реализуйте калькулятор обмена валют следующим образом:
  97. //
  98. // Пользователь вводит исходную валюту
  99. // Пользователь вводит валюту, в которую происходит конвертация
  100. // Пользователь вводит сумму в исходной валюте
  101. // Пользовател видит результат конвертации
  102. //
  103. // fetch('https://open.er-api.com/v6/latest/USD').then(res => res.json())
  104. // .then(data => {
  105. // //эта функция запускается когда данные скачиваются.
  106. // //остальной код работает РАНЬШЕ.
  107. // //только ТУТ есть переменная data со скачанными данными
  108. // console.log(data) //изучите структуру, получаемую с сервера в консоли
  109. // })
  110. //
  111. // Учтите, что пользователь может ввести какую-то дичь или название валют в неверном регистре
  112. // 14. Currency drop down
  113. // Сделайте выпадающий список с названиями всех валют, используя код из прошлого задания и накопление HTML-тэгов в строковой переменной. Для выпадающих списков в HTML предусмотрены тэги <select> и <option>
  114. // 15. Currency table (таблица в конспекте
  115. // Сделайте двумерную таблицу с курсами между всеми возможными парами валют по типу таблицы Пифагора, используя заготовку из задания Currency real rate:
  116. //16. Form в конспекте
  117. // Напишите код, который их любого объекта создает форму HTML. Например для такого объекта
  118. //17. Соответствие типов в конспекте
  119. //18. Table в конспекте
  120. // Даден любой массив с объектами