Функции массивов
Вы можете использовать нашего GPT-ассистента для помощи с операторами Nodul:
Он поможет с написанием выражений, использованием переменных, фильтров и построением логики внутри сценариев.
Алгоритм
Операторы этой группы позволяют выполнять операции с массивами и элементами массивов.
Элементами массива могут быть строки, числа или булевы значения.
Операторы
add
Этот оператор добавляет значение к указанной переменной для создания массива.
- Результат выражения: Значение в массиве.
join
Объединяет все элементы массива в строку, добавляя указанный разделитель между каждым элементом массива.

- Результат выполнения: текст с указанным разделителем.
- Пример: Если
_.Array = [1,2,3,4,5], то результат —"1.2.3.4.5".
slice
Возвращает изменённый массив, содержащий указанные элементы из предоставленного массива.
Указанные числа — это порядковые номера элементов массива. В примере ниже возвращаются элементы от нулевого (не включительно) до первого (включительно). Конечный номер может быть опущен, в этом случае будут возвращены все элементы массива после начального номера.

- Результат выполнения: массив значений.
- Пример: Если
1.Body = [\{"Value": "Hi"\}, \{"Value": "Nodul"\}], то результат —[\{"Value": "Hi"\}].
merge
Объединяет два или более переданных массива в один массив.

- Результат выполнения: массив значений.
- Пример: Если
1.Body[0] = [\{"Value": 5\}, \{"Value": 10\}]и1.Body[1] = [\{"Value": 15\}, \{"Value": 20\}], то результат —[\{"Value": 5\}, \{"Value": 10\}, \{"Value": 15\}, \{"Value": 20\}].
map
Возвращает массив, содержащий нужные значения из данного сложного массива. Может использоваться для фильтрации значений.


- Результат выполнения: массив найденных значений.
- Пример:
Входные данные:
[
{
"Name": "Kate",
"Address": "Tokyo",
"Age": 25
},
{
"Name": "Anna",
"Address": "Seoul",
"Age": 35
},
{
"Name": "Lisa",
"Address": "Beijing",
"Age": 45
}
]Результат:
[
25,
35,
45
]sort
Возвращает массив, содержащий значения данного массива, отсортированные в нужном порядке. Доступные варианты сортировки:
- asc — по возрастанию;
- desc — по убыванию;
- asc ci — по возрастанию, без учёта регистра;
- desc ci — по убыванию, без учёта регистра.

- Результат выполнения: массив отсортированных значений.
- Пример: Если
1.Body = [\{ "Value": 5\}, \{"Value": 10\}, \{ "Value": 15\}, \{"Value": 20\}], то результат —[\{ "Value": 20\}, \{"Value": 15\}, \{ "Value": 10\}, \{"Value": 5\}].
deduplicate
Удаляет дубликаты из данного массива и возвращает массив с уникальными значениями.
- Результат выполнения: массив уникальных значений.

- Пример:
Входные данные:
[
{
"Name": "Kate",
"Age": 45
},
{
"Name": "Anna",
"Age": 45
},
{
"Name": "Lisa",
"Age": 45
},
{
"Name": "Lisa",
"Age": 45
},
{
"Name": "Anna",
"Age": 25
}
]Результат:
[
{
"Age": 45,
"Name": "Kate"
},
{
"Age": 45,
"Name": "Anna"
},
{
"Age": 45,
"Name": "Lisa"
},
{
"Age": 25,
"Name": "Anna"
}
]distinct
Удаляет дубликаты из данного массива и возвращает массив с уникальными значениями. Все дубликаты удаляются на основе указанного ключа, кроме первого найденного значения.
- Результат выполнения: массив уникальных значений.
- Пример 1:

Входные данные:
[
{
"Name": "Kate",
"Age": 45
},
{
"Name": "Anna",
"Age": 45
},
{
"Name": "Lisa",
"Age": 45
},
{
"Name": "Lisa",
"Age": 45
},
{
"Name": "Anna",
"Age": 25
}
]Результат:
[
{
"Age": 45,
"Name": "Kate"
},
{
"Age": 25,
"Name": "Anna"
}
]- Пример 2:

Входные данные:
[
{
"Name": "Kate",
"Age": 45
},
{
"Name": "Anna",
"Age": 45
},
{
"Name": "Lisa",
"Age": 45
},
{
"Name": "Lisa",
"Age": 45
},
{
"Name": "Anna",
"Age": 25
}
]Результат:
[
{
"Age": 45,
"Name": "Kate"
},
{
"Age": 45,
"Name": "Anna"
},
{
"Age": 45,
"Name": "Lisa"
}
]