Validar propiedades de objetos con funciones curried

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 la función checkProp en JavaScript. Esta función toma una función predicado y un nombre de propiedad, y devuelve una función curried que verifica si el valor de la propiedad satisface el predicado para un objeto dado. Aprenderemos cómo usar esta función para validar eficientemente las propiedades de los objetos y crear código flexible y reutilizable.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic 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/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/BasicConceptsGroup -.-> javascript/obj_manip("Object Manipulation") subgraph Lab Skills javascript/variables -.-> lab-28194{{"Validar propiedades de objetos con funciones curried"}} javascript/data_types -.-> lab-28194{{"Validar propiedades de objetos con funciones curried"}} javascript/arith_ops -.-> lab-28194{{"Validar propiedades de objetos con funciones curried"}} javascript/comp_ops -.-> lab-28194{{"Validar propiedades de objetos con funciones curried"}} javascript/array_methods -.-> lab-28194{{"Validar propiedades de objetos con funciones curried"}} javascript/obj_manip -.-> lab-28194{{"Validar propiedades de objetos con funciones curried"}} end

Verificador de Propiedades

Para comprobar si una propiedad específica de un objeto cumple una determinada condición, utiliza la función checkProp. Esta función crea una función curried que toma una función predicado y un nombre de propiedad como argumentos. La función devuelta luego toma un objeto y devuelve true o false según si la propiedad especificada cumple la condición especificada por la función predicado.

A continuación, se muestra una implementación de ejemplo de checkProp:

const checkProp = (predicate, prop) => (obj) => !!predicate(obj[prop]);

Y aquí hay algunos ejemplos de cómo podrías utilizarla:

const lengthIs4 = checkProp((l) => l === 4, "length");
lengthIs4([]); // false
lengthIs4([1, 2, 3, 4]); // true
lengthIs4(new Set([1, 2, 3, 4])); // false (Set utiliza Size, no length)

const session = { user: {} };
const validUserSession = checkProp((u) => u.active && !u.disabled, "user");

validUserSession(session); // false

session.user.active = true;
validUserSession(session); // true

const noLength = checkProp((l) => l === undefined, "length");
noLength([]); // false
noLength({}); // true
noLength(new Set()); // true

En resumen, la función checkProp te permite comprobar fácilmente el valor de una propiedad específica en un objeto al especificar una función predicado para esa propiedad.

Resumen

¡Felicitaciones! Has completado el laboratorio de Verificación de Propiedades. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.