Introducción
En este laboratorio, exploraremos cómo encontrar la diferencia simétrica entre dos arrays basados en una función proporcionada utilizando JavaScript. Utilizaremos los métodos Array.prototype.filter() y Array.prototype.findIndex() para comparar los elementos de los dos arrays y devolver los valores que son únicos para cada array. Al final de este laboratorio, tendrás una mejor comprensión de cómo utilizar estos métodos para comparar y manipular arrays en JavaScript.
Una función para encontrar la diferencia simétrica de arrays
Para encontrar la diferencia simétrica entre dos arrays utilizando una función proporcionada como comparador, siga estos pasos:
- Abra la Terminal/SSH y escriba
nodepara comenzar a practicar la codificación. - Utilice los métodos
Array.prototype.filter()yArray.prototype.findIndex()para encontrar los valores adecuados. - Utilice el código dado para realizar la operación.
const symmetricDifferenceWith = (arr, val, comp) => [
...arr.filter((a) => val.findIndex((b) => comp(a, b)) === -1),
...val.filter((a) => arr.findIndex((b) => comp(a, b)) === -1)
];
Por ejemplo, considere la siguiente entrada:
symmetricDifferenceWith(
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0, 3.9],
(a, b) => Math.round(a) === Math.round(b)
); // [1, 1.2, 3.9]
El código anterior devolverá [1, 1.2, 3.9] como la diferencia simétrica entre los dos arrays.
Resumen
¡Felicidades! Has completado el laboratorio de Diferencia Simétrica de Arrays Basada en Función. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.