Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

231
Visualizações
JavaScript | Validar la estructura del objeto según el esquema personalizado

Trabajando en una API que necesita validar la estructura del objeto de solicitud entrante. Basado en otras respuestas a preguntas similares, he intentado crear una solución que no parece funcionar.

Mi código hasta ahora:

 const testObj = { "uuid": { "value": "5481da7-8b7-22db-d326-b6a0a858ae2f", "type": "id" }, "rate": { "value": 0.12, "type": "percent" } } let ok = true; ok = testObj === OBJECT_SCHEMA; // is false. Expected to be true

Mi esquema de validación:

 const OBJECT_SCHEMA = { "uuid": { "value": String, "type": String }, "rate": { "value": Number, "type": String } }

¿Alguien puede señalar lo que estoy haciendo mal aquí?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

testObj === OBJECT_SCHEMA devuelve falso porque el valor de los tipos testObj y OBJECT_SCHEMA son iguales pero no valores.

Mi recomendación sería revisar Yup o Zod para crear una validación.

about 4 years ago · Juan Pablo Isaza Relatório

0

Algo para empezar:

 let validate = (obj, schema) => typeof obj === 'object' ? Object.keys(schema).every(k => validate(obj[k], schema[k])) : obj?.constructor === schema; // const OBJECT_SCHEMA = { "uuid": { "value": String, "type": String }, "rate": { "value": Number, "type": String } } testObj = { "uuid": { "value": "5481da7-8b7-22db-d326-b6a0a858ae2f", "type": "id" }, "rate": { "value": 0.12, "type": "percent" } } console.log(validate(testObj, OBJECT_SCHEMA)) testObj.rate.value = 'foo' console.log(validate(testObj, OBJECT_SCHEMA)) delete testObj.rate.value console.log(validate(testObj, OBJECT_SCHEMA))

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda