Page 51 - 6105
P. 51

if (i% 2 == 0) continue;
                        alert (i);


                      }
                      Для парних i спрацьовує continue, виконання тіла припиняється і керування

               передається  на  наступний  прохід  for.  Директива  continue  дозволяє  обійтися  без

               дужок. Цикл, який обробляє тільки непарні значення, міг би виглядати так:


                      for (var i = 0; i <10; i ++) {
                        if (i% 2) {


                          alert (i);
                        }

                      }

                      З  технічної  точки  зору  він  повністю  ідентичний.  Дійсно,  замість  continue

               можна  просто  загорнути  дії  в  блок  if.  Однак,  ми  отримали  додатковий  рівень

               вкладеності  фігурних  дужок.  Якщо  код  всередині  if  довший,  то  це  погіршує

               читабельність, на відміну від варіанту з continue.

                      Не  можна  використовувати  break  /  continue  праворуч  від  оператора  '?'.

               Зазвичай можна замінити if  на оператор '?'.

                      Тобто, запис:


                      if (умова) {
                        a ();


                      } Else {
                        b ();

                      }

                      ... аналогічний запису:

                      умова? a (): b ();

                      В  обох  випадках  залежно  від  умови  виконається  або  a  ()  або  b  ().  Але

               різниця полягає в тому, що оператор '?', Використаний у другому записі, повертає

               значення.  Синтаксичні  конструкції,  які  не  повертають  значень,  не  можна



                                                                50
   46   47   48   49   50   51   52   53   54   55   56