Вопрос проверяет знание сигнатуры колбэков и умение передавать контекст итерации.
Сам массив передаётся в колбэк третьим аргументом. Это стандартное поведение методов массивов JavaScript. Благодаря этому колбэк имеет доступ ко всему массиву. Такой подход позволяет писать более гибкие условия. Он используется во всех методах итерации.
Встроенные методы массивов передают в колбэк не только элемент, но и контекст итерации.
Колбэк получает аргументы в следующем порядке:
текущий элемент
индекс элемента
исходный массив
function some<T>(
array: T[],
callback: (value: T, index: number, array: T[]) => boolean
): boolean {
for (let i = 0; i < array.length; i++) {
if (callback(array[i], i, array)) {
return true
}
}
return false
}
сравнение текущего элемента с другими
проверка длины массива
сложные условия на основе контекста
Доступ к массиву внутри колбэка реализуется передачей массива третьим аргументом. Это стандартный и ожидаемый контракт методов массивов.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию