Функции List.*M и аргумент equationCriteria
Недавно в комментариях к нашему блогу был задан вопрос о назначении третьего аргумента в функции List.Contains(). Мы провели небольшое исследование и поняли, что множество функций List.* имеют такой же аргумент. В документации к функции List.Distinct() приведено несколько примеров, но нет разъяснений по нашему вопросу. Там написано:
Подробную информацию по equationCriteria смотрите в Parameter Values.
…но ссылка на раздел Parameter Values отсутствует. Немного больше можно найти в конце официальной страницы.
Equation criteria
Аргумент equationCriteria для значений списка указывается как
– Значение функции, которое:
– Является ключом-селектором для списка значений при сравнении
– Определяет функцию компаратор. Список доступных функций смотрите в разделе Comparer functions
– Значение списка, отвечающее требованиям:
– Строго два значения
– Первый элемент это ключ селектор
– Второй элемент это функция компаратор
Не слишком помогает, не так ли? Надеемся, что наша статья окажется полезной в данном вопросе. Рассмотрим следующие примеры…
Основы
Начнём с основ. Следующее выражение, использующее функцию List.Contains(), вернёт TRUE (истина), так как текстовое значение apples присутствует в списке {"apples", "oranges", "pears"}: