Page 86 - 6108
P. 86

Якщо  параметр  не  переданий  при  виклику  –  він  вважається  рівним
               undefined.  При  оголошенні  функції  необов'язкові  аргументи,  як  правило,
               розміщують в кінці списку.
                     Для  вказівки  значення  «за  замовчуванням»,  тобто,  такого,  яке
               використовується, якщо аргумент не вказано, використовується два способи:
                     Можна  перевірити,  чи  рівний  аргумент  undefined,  і  якщо  так  –  то
               записати в нього значення за замовчуванням.

                     if (arg === undefined) {
                         arg = 'значення за замовчуванням';
                       }

                     Використовувати оператор ||:

                     arg = arg || 'Значення за замовчуванням';
                     Другий  спосіб  вважає,  що  аргумент  відсутній,  якщо  передано  порожній
               рядок, 0, або взагалі будь-яке значення, яке в логічному контексті є false.
                     Стандарт  ES-2015  дозволяє  вказувати  параметри  по  замовчуванні  через
               рівність =:

                      function showMenu(title = "Без заголовку", width = 100,
               height = 200) {
                       alert(title + ' ' + width + ' ' + height);
                     }
                     showMenu("Меню"); // Меню 100 200

                     Якщо аргументів передано більше, ніж треба то помилки не буде. Але, щоб
               отримати  такі  «зайві»  аргументи,  потрібно  буде  прочитати  їх  зі  спеціального

               об'єкта  arguments.  В  стандарті  ES-2015,  щоб  отримати  масив  аргументів,
               можна використовувати оператор ... (spred), наприклад:
                     function showMenu(title, width, height, …rest) {
                       //тіло функції;
                     }
                     showMenu("Меню", 100, 200, 1, 5); // Меню 100 200

                                                                                                    5
                     В rest потрапить масив всіх аргументів, починаючи з четвертого .
                     Повернення значення
                     Функція  може  повернути  результат,  який  буде  переданий  код  який
               викликав її. Для повернення значення використовується директива return.
                     Вона  може  знаходитися  в  будь-якому  місці  функції.  Як  тільки  до  неї
               доходить  управління  -  функція  завершується  і  значення  передається  назад.
               Викликів return може бути і кілька

                      function checkAge(age) {
                        if (age > 18) {
                          return true;


                     5  rest – справжній масив, з методами map, forEach і іншими, на відміну від
               arguments.
   81   82   83   84   85   86   87   88   89   90   91