Перейти к основному содержимому

Цикл «для из» (обход коллекции)

Если необходимо перебрать элементы какой-либо коллекции, то можно использовать специальный вариант цикла, который предназначен для обхода коллекций. С помощью такого цикла можно обходить потомки базового типа Обходимое и значения типа Строка. Рассмотрим этот вариант цикла более подробно:

для значение-элемента из коллекция
тело-цикла
[прервать]
тело-цикла
[продолжить]
тело-цикла
;

Существенная разница от «обычного» цикла для заключается в следующем:

  • Нет переменной, выступающей в роли счетчика цикла. Вместо счетчика цикла существует переменная значение-элемента, в которую «1С:Исполнитель» помещает ссылку на очередной элемент коллекции. Переменная «объявляется» с модификатором знч, что исключает присваивание этой переменной какого-либо значения из встроенного языка. С помощью этой переменной разработчик получает доступ к значению элемента коллекции и может выполнять все те действия, которые этот элемент поддерживает.
  • Отсутствует выражение, определяющее условие завершения цикла. При обходе коллекции цикл будет завершен тогда, когда будет перебрана вся коллекция.

В остальном все просто:

  • значение-элемента

    В данную переменную помещается значение очередного элемента коллекции. Это значение изменяется после окончания каждой итерации цикла. Во время первой итерации данная переменная указывает на первый элемент коллекции. Если для коллекции не определен порядок обхода элементов, то при каждом обходе коллекции может наблюдаться другой порядок элементов.

  • коллекция

    Коллекция, которую необходимо обработать.

Принудительное завершение текущей итерации (с помощью ключевого слова продолжить) и принудительное завершение цикла (с помощью ключевого слова прервать) работают аналогично циклу для со счетчиком цикла.

метод Скрипт()
для Элемент из [1, 3, 5, 7, 9]
пер Результат = "Элемент набора - " + Элемент
;
;