Копировать переменную

Компонент Копировать переменную копирует значение одной переменной в другую. Может объединить два списка или объекта.

Настройка компонента

  1. В поле «Откуда» введите название переменной, из которой нужно скопировать данные.
  2. В поле «Куда» введите название переменной, в которую нужно скопировать данные.
  3. Если необходимо объединить данные из поля «Откуда» с данными, находящимися в поле ‎«Куда», отметьте чекбокс «Объединить вместе». Это работает только для объектов и списков.
При условии, что переменной, указанной в поле «Откуда‎» не существует в боте, в переменную, указанную в поле «Куда‎», после копирования запишется значение null. В случае, если не существует переменной, куда производится копирование, то переменная создастся и в ее значении будет тоже самое, что и в переменной из поля «Откуда»‎.

Если не включать чекбокс «‎Объединить вместе» при копировании переменной, значение одной переменной просто скопируется в другую. В переменной после копирования будет только скопированное значение, старое значение заменится на него.

Например, в боте есть два списка.

В переменной var1 такой список:

[
"apple",
"pear",
"kiwi"
]

В переменной var2 другой список:

[
"strawberry",
"lemon",
"mango"
]

Копируем список из переменной var1 в var2 без объеденения объектов.

Сохраняем изменения, затем переходим в раздел «‎Пользователи»‎. Если открыть все переменные пользователя, то можно обнаружить, что в переменной var2 значение стало точно таким же, как в переменной var1, откуда значение копировалось.

При необходимости объединения данных из поля «‎Откуда» с данными, находящимися в поле «‎Куда», нужно отметить чекбокс Объединить вместе.

Пример:

После копирования в списке переменной var2 появились все значения — из var1 и из var2:

Как видно из примера, в случае копирования объектов или списков с активным чекбоксом Объединить вместе, элементы из переменной «‎Куда» будут отображаться в начале списка, а элементы из переменной «‎Откуда» — в конце списка. Так происходит без активации обратного порядка объединения.

Однако, если вместе с чекбоксом Объединить вместе будет активна функнция Обратный порядок объединения, то список или объект будет объединен в обратном порядке: элементы из переменной Откуда будут отображаться в начале списка, а элементы из переменной Кудав конце списка:

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