Timkor

ternaryTernary

Jul 11th, 2021
836
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // https://zero.p2p.shpp.me/tasks/2_2_km_in_day_2.html
  2. // Владислав Лудчак
  3.  
  4. // використовуючи else:
  5.  
  6. let averageStepsPerDay = +prompt("скільки КМ людина проходить в средньому пішки на день?");
  7. /* добре іменування - цілком точно висвітлює що саме в цій змінній. Такі іменування стануть
  8. в пригоді коли задача буде мати додаткові дані які треба розрізняти, наприклад:
  9. максимальна кількість шагів порахована в рік (поділемо на 365 отримаємо в день) тоді змінні будуть схожі на
  10. maxStepPerYear, maxStepPerYear, або ще мінімальна кількість буде фігурувати - тоді кожне слово у іменуванні буде
  11. пояснювати її сутність. І добре, що це буде так. Але коли в задачі є одна єдина відстань описана в предметній області як
  12. середня кількість кроків, то можна трохи спростити іменування до дистанція, або кількістьКроків. У вас добре іменування.
  13. */
  14. let message
  15. if (averageStepsPerDay <= 3) {
  16.     message = "мало!";
  17. } else if (averageStepsPerDay >= 20) {
  18.     message = "марафонец!";
  19. } else {
  20.     message = "красавчик!";
  21. }
  22. console.log(message)
  23.  
  24. //використовуючи && : ну норм, але.. іф тут можна використовувати вважаю, просто без елсе,))
  25. // без іф такий код гірше читати, ключовий момент (averageStepsPerDay > 3 && averageStepsPerDay < 20)
  26.  
  27. let averageStepsPerDay = +prompt("скільки КМ людина проходить в средньому пішки на день?");
  28. (averageStepsPerDay <= 3) && alert("мало!");
  29. (averageStepsPerDay >= 20) && alert("марафонец!");
  30. (averageStepsPerDay > 3 && averageStepsPerDay < 20) && alert("красавчик!");
  31.  
  32. //не використовуючи ні && ні else: тернарник в тернарнику, ну.. на ваше сумління. Мені читати складно і є така думка, що
  33. // тернарник норм коли треба щось присвоїти, не виконати (у вас так і є) ну і вкладенність зайва, але повторюся - то
  34. // не постулат. Мені здається цікавішим рішення без && та else - тобто тільки if можна використати. Бо тернарний це той
  35. // самий іф з елсом, а без елсу ?))
  36.  
  37.  
  38. let averageStepsPerDay = +prompt("скільки КМ людина проходить в средньому пішки на день?");
  39. let message = (averageStepsPerDay <= 3) ? "мало!" :
  40.     (averageStepsPerDay >= 20) ? "марафонец!" : "красавчик!";
  41. console.log(message)
Advertisement
Add Comment
Please, Sign In to add comment