Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

140
Vistas
¿Cómo crear una función que omita los pares clave/valor de un objeto y cree un nuevo objeto con las propiedades y valores restantes?

He estado trabajando en la creación de una función de omisión con un parámetro de fuente y claves, que verifica las claves dentro de la fuente, y si se encuentran, esas propiedades se omiten de la fuente, luego crea un nuevo objeto literal con la clave restante/ pares de valores dentro de la fuente. Hasta ahora, no he tenido éxito y solo he podido crear una función que hace lo contrario de crear un objeto con las claves que se encuentran dentro de la fuente. ¿Alguien puede ayudar a averiguar lo que me estoy perdiendo? ¡Sería muy apreciado!

 function omit(source, keys) { var includedSource = {}; for (var key in source) { for (var i = 0; i < keys.length; i++) { if (keys[i] !== key) { includedSource[key] = source[key]; console.log('source[keys[i]]:', source[keys[i]]); console.log('includedSource:', includedSource); } } } return includedSource; } function omit(source, keys) { var includedSource = {}; for (var key in source) { for (var i = 0; i < keys.length; i++) { if (keys[i] === key) { includedSource[key] = source[key]; console.log('source[keys[i]]:', source[keys[i]]); console.log('includedSource:', includedSource); } } } return includedSource; }
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Aquí hay una implementación simple con un objeto plano. No estoy seguro de cómo se declararían las claves si su objeto pudiera estar anidado, y esperaría extraer algo del nivel N de valores/claves anidadas

 const obj = { A: 1, B: 2, C: 3, D: 4 }; function omit(data, keys) { let result = {}; for (let key in data) { if (keys.includes(key)) continue; result[key] = data[key]; } return result; } console.log(omit(obj, ["A", "D"])) // {B: 2, C: 3}
about 4 years ago · Juan Pablo Isaza Denunciar

0

Podrías desestructurar y descansar para un nuevo objeto.

 function omit(object, keys) { let _; // prevent to be global for (const key of keys) ({ [key]: _, ...object } = object); return object; } console.log(omit({ a: 1, b: 2, c: 3, d: 4 }, ['b', 'c']));

about 4 years ago · Juan Pablo Isaza Denunciar

0

Un enfoque es usar Object.entries() y filtrar las entradas que tienen las claves no deseadas y luego usar Object.fromEntries() para crear el nuevo objeto a partir de las entradas filtradas.

 const omit = (data, keys) => { return Object.fromEntries( Object.entries(data).filter(([k]) => !keys.includes(k)) ) } console.log(omit({ a:1,b:2,c:3,d:4}, ['a', 'b']))

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda