script.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. // blocks
  2. // Ответьте на вопросы в комментариях и сверьтесь с отладчиком. console.log специально не писал
  3. blocks: {
  4. let a = 10
  5. {
  6. let b = 20
  7. {
  8. let c = 30
  9. //a = 10, b = 20, c = 30, d is not defined
  10. b++
  11. a *= 10
  12. }
  13. {
  14. let c = 50
  15. //a = 100, b = 21, c = 50, d is not defined
  16. b += 500
  17. }
  18. {
  19. const a = 100500
  20. const d = "value"
  21. //a = 100500, b = 521, c is not defined, d = "value"
  22. {
  23. let a = -50
  24. b = 1000
  25. //a = -50, b = 1000, c is not defined, d = "value"
  26. }
  27. //a = 100500, b = 1000, c is not defined, d = "value"
  28. }
  29. //a = 100, b = 1000, c is not defined, d is not defined
  30. }
  31. //a = 100, b is not defined, c is not defined, d is not defined
  32. }
  33. // comparison if
  34. // Разберите пример. Добавьте условие отрицательного возраста в пример выше. Расставьте недостающие
  35. // (но синтаксически необязательные) фигурные скобки. Выкиньте лишнее из текущего кода
  36. comparison_if: {
  37. let age = +prompt("Сколько вам лет?", "");
  38. if (age < 0) {
  39. alert("ты шо там, нормально?");
  40. } else {
  41. if (age < 18) {
  42. alert("школьник");
  43. } else {
  44. if (age < 30) {
  45. alert("молодеж");
  46. } else {
  47. if (age < 45) {
  48. alert("зрелость");
  49. } else {
  50. if (age < 60) {
  51. alert("закат");
  52. } else {
  53. if (age > 60) {
  54. alert("как пенсия?");
  55. } else {
  56. alert("то ли киборг, то ли KERNESS");
  57. }
  58. }
  59. }
  60. }
  61. }
  62. }
  63. }
  64. // switch: sizes
  65. // Сделайте задание Comparison: sizes используя switch
  66. switch_sizes: {
  67. const ukrSystem = +prompt('Which size clothes do you wear?');
  68. switch (ukrSystem) {
  69. case 40:
  70. alert('You wear 6 size in american system');
  71. break;
  72. case 42:
  73. alert('You wear 8 size in american system');
  74. break;
  75. case 44:
  76. alert('You wear 10 size in american system');
  77. break;
  78. case 46:
  79. alert('You wear 12 size in american system');
  80. break;
  81. case 48:
  82. alert('You wear 14 size in american system');
  83. break;
  84. case 50:
  85. alert('You wear 16 size in american system');
  86. break;
  87. case 52:
  88. alert('You wear 18 size in american system');
  89. break;
  90. case 54:
  91. alert('You wear 20 size in american system');
  92. break;
  93. default:
  94. alert('You entered something wrong');
  95. }
  96. }
  97. // noswitch
  98. // Напишите функцию noSwitch, которая принимает объект со значениями-функциями, ключ для объекта и запускает
  99. // одну из функций из объекта если ключ найден, иначе - запускает default:
  100. noswitch: {
  101. const noSwitch = (key, cases, defaultKey = 'default') => {
  102. return key in cases ? cases[key]() : cases[defaultKey]();
  103. //проверка наличия key в cases
  104. //если есть - достать значение по ключу. это будет функция. Запустить ее
  105. //если нет - извлечь из объекта cases значение по ключу, имя которого лежит в переменной defaultKey. Запустить
  106. //пущай функция noSWitch возвращает то, что возвращает одна из функций из объекта
  107. }
  108. const drink = prompt("Что вы любите пить")
  109. noSwitch(drink, {
  110. воду: () => console.log('Самый здоровый выбор!'),
  111. чай() {
  112. console.log('Вкусная и полезная штука. Не переусердствуйте с сахаром')
  113. },
  114. "пиво": () => console.log('Хорошо летом, да в меру'),
  115. виски: function () {
  116. console.log('Да вы, батенька, эстет! Не забудьте лед и сигару')
  117. },
  118. default() {
  119. console.log('шото я не понял')
  120. }
  121. })
  122. }