Diferencias en Arrays Basadas en Funciones

Beginner

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

Introducción

En este laboratorio, exploraremos cómo filtrar valores de una matriz basados en una función comparadora dada. Utilizaremos los métodos Array.prototype.filter() y Array.prototype.findIndex() para lograr esto. Además, aprenderemos cómo utilizar el comparador de igualdad estricta predeterminado si no se proporciona una función comparadora.

Cómo filtrar valores de un array basados en una función

Para filtrar todos los valores de un array basados en una función comparadora dada, siga estos pasos:

  1. Abra la Terminal/SSH y escriba node para comenzar a practicar la codificación.
  2. Utilice Array.prototype.filter() y Array.prototype.findIndex() para encontrar los valores adecuados.
  3. Omita el último argumento, comp, para utilizar un comparador de igualdad estricta predeterminado.
  4. Utilice el siguiente código:
const differenceWith = (arr, val, comp = (a, b) => a === b) =>
  arr.filter((a) => val.findIndex((b) => comp(a, b)) === -1);
  1. Pruebe su función con los siguientes ejemplos:
differenceWith(
  [1, 1.2, 1.5, 3, 0],
  [1.9, 3, 0],
  (a, b) => Math.round(a) === Math.round(b)
); // Salida esperada: [1, 1.2]

differenceWith([1, 1.2, 1.3], [1, 1.3, 1.5]); // Salida esperada: [1.2]

Resumen

¡Felicidades! Has completado el laboratorio de Diferencias en Arrays Basadas en Funciones. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.