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

07.7 Функции массивов

Алгоритм

Операторы этой группы обеспечивают выполнение операций с массивами и элементами массивов.

подсказка

Элементы массива могут быть строками, числами, булевыми значениями.

Примеры

add

Добавляет значение в заданную переменную для формирования массива. См. Пример сценария с использованием SetVariables и оператора 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[0] = [{ "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"
}
]
  • Пример 3:

Входные данные:

[
{
"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"
}
]