hw09_05_noswitch.html 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. <head>
  2. <h1>noswitch</h1>
  3. </head>
  4. <body>
  5. <script>
  6. const noSwitch = (key, cases, defaultKey = 'default') =>
  7. (cases[key] || cases[defaultKey])();
  8. /*{
  9. //проверка наличия key в cases
  10. const f = cases[key];
  11. if (f)
  12. return f();
  13. else
  14. cases[defaultKey]();
  15. //если есть - достать значение по ключу. это будет функция. Запустить ее
  16. //если нет - извлечь из объекта cases значение по ключу, имя которого лежит в переменной defaultKey. Запустить
  17. //пущай функция noSWitch возвращает то, что возвращает одна из функций из объекта
  18. }*/
  19. const drink = prompt("Что вы любите пить")
  20. noSwitch(drink, {
  21. воду: () => console.log('Самый здоровый выбор!'),
  22. чай() {
  23. console.log('Вкусная и полезная штука. Не переусердствуйте с сахаром')
  24. },
  25. "пиво": () => console.log('Хорошо летом, да в меру'),
  26. виски: function () {
  27. console.log('Да вы, батенька, эстет! Не забудьте лед и сигару')
  28. },
  29. default() {
  30. console.log('шото я не понял')
  31. }
  32. })
  33. </script>
  34. </body>