Введение
В этом практическом занятии мы изучим, как проверить, все ли элементы массива равны, используя заданную функцию отображения на JavaScript. Мы будем использовать функцию allEqualBy, которая применяет функцию отображения к первому элементу массива и использует Array.prototype.every(), чтобы сравнить остальные элементы с первым. Это практическое занятие предназначено для того, чтобы помочь вам понять концепцию функций отображения и, как они могут быть использованы для сравнения элементов в массиве.
Проверка на равенство элементов массива с помощью заданной функции
Для проверки того, все ли элементы массива равны, используйте функцию allEqualBy. Эта функция применяет заданную функцию отображения fn к первому элементу массива arr. Затем она проверяет, возвращает ли fn для всех элементов массива то же значение, что и для первого элемента, используя Array.prototype.every(). Функция использует строгий оператор сравнения, который не учитывает неравенство NaN сам по себе.
Вот код для allEqualBy:
const allEqualBy = (arr, fn) => {
const eql = fn(arr[0]);
return arr.every((val) => fn(val) === eql);
};
Вы можете использовать allEqualBy так:
allEqualBy([1.1, 1.2, 1.3], Math.round); // true
allEqualBy([1.1, 1.3, 1.6], Math.round); // false
Для начала практиковаться в написании кода с помощью этой функции, откройте Терминал/SSH и введите node.
Резюме
Поздравляем! Вы завершили практическое занятие по проверке на равенство элементов массива с использованием функции. Вы можете практиковаться в решении других задач в LabEx, чтобы улучшить свои навыки.