Diferencias en Arrays Basadas en Funciones

JavaScriptJavaScriptBeginner
Practicar Ahora

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

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

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.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") subgraph Lab Skills javascript/variables -.-> lab-28323{{"Diferencias en Arrays Basadas en Funciones"}} javascript/data_types -.-> lab-28323{{"Diferencias en Arrays Basadas en Funciones"}} javascript/arith_ops -.-> lab-28323{{"Diferencias en Arrays Basadas en Funciones"}} javascript/comp_ops -.-> lab-28323{{"Diferencias en Arrays Basadas en Funciones"}} javascript/higher_funcs -.-> lab-28323{{"Diferencias en Arrays Basadas en Funciones"}} end

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.