---
title: Finders Keepers
localeTitle: Finders Keepers
---
## Проблема Объяснение

Нам нужно вернуть элемент из массива, который передает функцию. И `function` и `array` передаются в нашу функцию `findElement(arr, func)` .

## Подсказка: 1

Просмотр массива может выполняться с помощью цикла `for` .

> _попытаться решить проблему сейчас_

## Подсказка: 2

`num` передается функции. Нам нужно будет установить его на элементы, которые мы хотим проверить с помощью функции.

> _попытаться решить проблему сейчас_

## Подсказка: 3

Не забывайте, что если ни один из чисел в массиве не прошел тест, он должен возвращаться `undefined` .

> _попытаться решить проблему сейчас_

## Основное решение

```javascript
function findElement(arr, func) { 
  let num = 0; 
 
  for(var i = 0; i < arr.length; i++) { 
    num = arr[i]; 
    if (func(num)) { 
      return num; 
    } 
  } 
 
  return undefined; 
 } 
```

## Обозначение кода

*   Задача требует, чтобы мы просмотрели массив. Это делается с использованием цикла `for` .
*   В функцию передается переменная `num` , поэтому мы устанавливаем ее для каждого индекса в нашем массиве.
*   Предварительно определенная функция уже проверяет каждый номер для нас, поэтому, если это «истина», мы возвращаем это число.
*   Если ни один из чисел в массиве не прошел тест функции, мы возвращаем undefined.