В чем разница между some и every?
Массивы и структуры данных
`some` и `every` — методы массива, возвращающие boolean: `some` проверяет, удовлетворяет ли условию хотя бы один элемент, `every` — все ли элементы.
some — хотя бы один
Возвращает true, если хотя бы один элемент удовлетворяет условию:
[1, 2, 3, 4].some((n) => n > 3); // true — есть 4
[1, 2, 3].some((n) => n > 5); // false — ни одногоevery — все
Возвращает true, если все элементы удовлетворяют условию:
[2, 4, 6].every((n) => n % 2 === 0); // true — все чётные
[2, 4, 5].every((n) => n % 2 === 0); // false — 5 нечётноеКороткое замыкание
Оба останавливаются досрочно:
some— как только нашёл подходящий (true).every— как только нашёл неподходящий (false).
Это эффективнее, чем filter для проверки наличия.
На пустом массиве
[].some(fn); // false — ни одного
[].every(fn); // true — «все» (вакуумная истина)Применение
const hasError = fields.some((f) => f.error); // есть ли ошибка
const allValid = fields.every((f) => f.isValid); // всё ли валидноКоротко для собеседования
some — true, если хотя бы один элемент удовлетворяет условию; every — если все. Оба возвращают boolean и делают короткое замыкание (some останавливается на первом true, every — на первом false). На пустом массиве some → false, every → true.