Найти первые N совпадений

Beginner

This tutorial is from open-source community. Access the source code

Введение

В этом лабе мы исследуем функцию findFirstN() в JavaScript. Эта функция используется для нахождения первых n элементов в массиве, для которых заданная функция возвращает истинное значение. Мы узнаем, как использовать findFirstN() в сочетании с другими методами массивов для манипулирования и извлечения конкретных данных из массивов.

Как найти первые N совпадений

Для поиска первых n элементов, удовлетворяющих определенным критериям, используйте функцию findFirstN. Вот как:

  1. Откройте Терминал/SSH.
  2. Введите node, чтобы начать практиковать программирование.
  3. Используйте функцию findFirstN, передав в нее массив для поиска, функцию сопоставления и количество совпадений для поиска (если не указано, по умолчанию равно 1).
  4. Функция matcher будет выполнена для каждого элемента arr, и если она возвращает истинное значение, этот элемент будет добавлен в массив результатов.
  5. Если длина массива res достигает значения n, функция вернет массив результатов.
  6. Если совпадений не найдено, будет возвращен пустой массив.

Вот код для функции findFirstN:

const findFirstN = (arr, matcher, n = 1) => {
  let res = [];
  for (let i in arr) {
    const el = arr[i];
    const match = matcher(el, i, arr);
    if (match) res.push(el);
    if (res.length === n) return res;
  }
  return res;
};

И вот несколько примеров использования:

findFirstN([1, 2, 4, 6], (n) => n % 2 === 0, 2); // [2, 4]
findFirstN([1, 2, 4, 6], (n) => n % 2 === 0, 5); // [2, 4, 6]

Резюме

Поздравляем! Вы завершили лабу "Найти первые N совпадений". Вы можете практиковать в других лабах в LabEx, чтобы улучшить свои навыки.